X

Shortcode pentru includerea fișierelor externe

Fragmente de IsItWP

Fișierele externe sunt folosite pentru a afișa conținut extern pe site-ul dvs. WordPress. Cu ajutorul unui shortcode, puteți realiza acest lucru cu ușurință.

Instrucțiuni: Adăugați următorul cod în fișierul functions.php al temei dvs. WordPress pentru a include shortcode-ul pentru fișiere externe.

function show_file_func( $atts ) {
  extract( shortcode_atts( array(
    'file' => ''
  ), $atts ) );
 
  if ($file!='')
    return @file_get_contents($file);
}
 
add_shortcode( 'show_file', 'show_file_func' );

Acum puteți folosi shortcode-ul de mai jos cu link-ul fișierului dvs. extern pentru a include fișierul extern în postările și paginile dvs. WordPress.

[show_file file="http://www.mysite.com/somefile.html"]

De asemenea, v-ar putea plăcea crearea unui formular de încărcare fișiere în WordPress.

Comentarii   Lasă un răspuns

  1. Vă rugăm să luați în considerare adăugarea unei a doua versiuni a codului dvs. care utilizează un transient care expiră, de exemplu, la fiecare 24 de ore sau similar, pentru a evita apelurile prea frecvente la file_get_contents() pentru fișiere externe.

    developer.wordpress.org/apis/handbook/transients/

  2. Pur și simplu Uau! Aveam un cod care funcționa înainte, dar apoi actualizarea recentă l-a stricat și acum returnează o eroare. Am petrecut ore întregi reparându-l, dar s-a dovedit a fi fără speranță. Am căutat o soluție și am găsit-o pe a dvs. Se potrivește perfect codului meu acum. Mulțumesc!

    1. Hei, cu plăcere. Ne bucurăm să știm că codul nostru a ajutat.

  3. Ați oferit soluția pentru nenumăratele mele ore de cercetare într-un minut. Sunteți o scumpă.

  4. Multe mulțumiri pentru contribuția bine explicată și simplă.
    Am căutat mult timp pe Google și alte motoare de căutare un astfel de cod. Toate codurile încercate până acum nu au funcționat.
    Dar acesta din postare funcționează foarte bine și a fost scris într-un mod inteligibil.

    Doar un mic lucru mă deranjează încă.
    Dacă apelez direct link-ul care trebuie inclus, toate literele sunt afișate corect.
    Când privesc link-ul inclus în WP, ö, ä, ü devin ciudate cu caractere ? sunt afișate.
    De ce se întâmplă asta, că în fișierul (link-ul) care trebuie inclus am depus următorul cod.

    Am plasat și linia în WP, unde am plasat și link-ul de includere, dar nu a funcționat.

    Cum pot încă să repar această mică eroare?

    1. Ați putea posta un exemplu despre cum se schimbă link-ul?

  5. S-a rezolvat. Mulțumesc foarte mult.

    1. Mă bucur că a ajutat, Baba!

  6. Variabilele WP nu sunt recunoscute în fișierul inclus. Am încercat și $_GET, $_POST, dar fără succes. Cum se poate repara asta?..

    1. Acesta nu este ceva ce am încercat să fac, totuși nu sunt sigur de ce ați dori să includeți variabile WP când ați putea face acest lucru în cadrul postării sau folosind functions.php și shortcode. Ce anume încercați să faceți, acest lucru m-ar putea ajuta să înțeleg cea mai bună opțiune.

  7. Chris Olbekson August 6, 2013 at 2:52 pm

    Acest fragment are implicații serioase de securitate. Ar putea permite oricărui editor sau utilizator să acceseze și să citească conținutul oricărui fișier de pe server. Ați putea folosi API-ul HTTP încorporat WordPress și să utilizați wp_remote_get în loc de file_get_contents().

  8. Bun

  9. Sună bine, dar cum să includ codul care funcționează? Adică, am o galerie NextGEN pe care aș vrea să o includ în acest mod, dar shortcode-ul nu funcționează (afișează shortcode-ul NextGEN și nu miniaturile), de asemenea, plugin-urile nu funcționează (cum ar fi auto-hyperlink, chiar și CSS-ul nu funcționează) pe conținutul fișierului inclus de la distanță.

  10. foarte frumos!

  11. Va funcționa într-o zonă de widget?

    1. Ar trebui să activați shortcode-urile pentru widget-uri, de exemplu:

      add_filter(‘widget_text’, ‘do_shortcode’);

Adaugă un comentariu

Suntem bucuroși că ați ales să lăsați un comentariu. Vă rugăm să rețineți că toate comentariile sunt moderate conform politicii noastre de confidențialitate, iar toate linkurile sunt nofollow. NU folosiți cuvinte cheie în câmpul nume. Să avem o conversație personală și semnificativă.

Lista de verificare pentru lansarea WordPress

Lista de verificare finală pentru lansarea WordPress

Am compilat toate elementele esențiale de verificare pentru lansarea următorului dvs. site WordPress într-o singură carte electronică la îndemână.
Da, trimite-mi eBook-ul gratuit!