Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    funzione ininfluente sul resto

    Ciao

    Vorrei sapere se in php c'è un modo per "limitare" una funzione.

    Mi spiego meglio, ho creato la funzione aggiunta_biblio(), questa la inserisco nella pagina X.

    Sia nella pagina X che nella funzione viene richiamata la funzione xxx(), però con parametri diversi, il problema è che se richiamo aggiunta_biblio() riporta nella pagina X anche la funzione xxx()... come posso limitarla evitando che abbia effetti al di fuori della funzione in cui viene richiamata?

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Non puoi in base ai parametri decidere quando chiamare o meno la funzione?

  3. #3
    Il problema è che la stessa funzione viene chiamata 2 volte, la prima è generata automaticamente da wordpress quindi non posso gestirla, la seconda la creo io coi parametri che voglio. Il punto è che devo chiamare prima la mia e poi quella intrinseca, quindi i parametri si modificano e non so come ripristinare quelli originali.

  4. #4
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    La prima chiamata originale cosa fa? Se non puoi metterla dopo la tua , non puoi controllare se crea qualcosa e fare un controllo prima di eseguire la tua?

  5. #5
    la prima chiamata (quella intrinseca) è query_posts(parametri_che_non_conosco);
    quella che effettuo io è query_posts(parametri_che_decido_io);

    visto che la seconda sovrascrive la prima e l'operazione che richiama la prima viene dopo la seconda chiamata, non so come limitare la seconda.

    L'ho messa in una funzione sperando che il suo utilizzo rimanesse isolato, ma a quanto pare mi sbagliavo.

    esempio di codice:
    codice:
    function salta_query(){
      query_posts(parametri_che_decido_io);
      operazioni varie con return;
    }
    
    query_posts(parametri_che_non_conosco); // NASCOSTA
    salta_query()
    operazioni che utilizzano la query nascosta;

  6. #6
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    query_posts(parametri_che_decido_io); non genera qualcosa a db o sessione? non puo' capire se ha gia creato qualcosa e quindi non eseguire la tua in quel momento?

  7. #7
    Bè ma la cosa allora perde senso, io la devo eseguire insieme a quella intrinseca, ci devono essere entrambe!

    il punto è: esiste una funzione che prende i parametri passati a una determinata funzione? o meglio ancora c'è un modo per limitare gli effetti di una funzione esclusivamente nella funzione in cui sta senza riportare gli effetti nel resto del codice?

    tipo una private function...

  8. #8
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Onestamente non saprei come modificare il comportamento di una funzione senza poter toccare il codice.

  9. #9
    WordPress mette a disposizioni filtri ed action per manipolare/modificare il comportamento predefinito.

    Se spieghi che cosa devi fare realmente, quale obiettivo ti sei prefissato, probabilmente esiste un modo alternativo per farlo senza dover andare a modificare il codice del core.

  10. #10
    Aaaah finalmente un esperto

    Conosco bene wordpress, però non riesco a trovare una soluzione per questo mio problema.

    In pratica io vorrei aggiungere una page nella lista dei post della pagina tag.php

    Visto che tag.php ha intrinseca la query_posts e per inserire una page devo per forza fare una query_posts diversa, mi ritrovo che quando va ad inserire la lista dei post, non ha più i parametri per farlo, ma si ritrova solo quelli della page....

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.