Cum să adaugi conținut la the_content folosind add_filter cu un tip personalizat de postare?

12 sept. 2011, 05:48:54
Vizualizări: 14.6K
Voturi: 10

Am un tip personalizat de postare care funcționează corect, dar o parte din textul paginii este același pentru fiecare postare, așa că vreau să-l adaug folosind o funcție.

Am configurat următoarele:

function new_default_content($content) {
global $post;
    if ($post->post_type == 'custom-post-type') {
    $content = 'Text test aici';
    }
    return $content;
    }
add_filter('the_content', 'new_default_content');

Totuși, când reîmprospătez pagina, văd doar "Text test aici" și nu conținutul postării (din the_content).

Dacă comentez această funcție, conținutul postării reapare. Ce fac greșit?

0
Toate răspunsurile la întrebare 2
4
10

Tu suprascrii complet conținutul în loc să-l adaugi. Trebuie să faci ceva de genul $content .= 'Text de test aici'; în schimb.

12 sept. 2011 06:26:40
Comentarii

Multă putere în acea perioadă, mulțumesc! Altă întrebare: folosesc un plugin pentru a afișa butoanele sociale pentru Like, +1 etc și acestea apar deasupra noului conținut implicit — există vreo metodă de a face ca butoanele să apară dedesubt? Am presupus că acest filtru va „unește” the_content și new_default_content ca o secțiune completă.

George C George C
13 sept. 2011 18:45:34

Ei bine, adaugi noul conținut, deci va apărea după. Ai putea încerca să conectezi filtrul cu o prioritate mai mare pentru a-l procesa înainte ca plugin-ul să o facă, deoarece și plugin-ul folosește același filtru.

helenhousandi helenhousandi
13 sept. 2011 20:27:43

A, voi cerceta problema cu prioritățile — mulțumesc din nou!

George C George C
14 sept. 2011 08:46:43

PS Am experimentat cu prioritatea și asta a funcționat! Mulțumesc din nou :)

George C George C
14 sept. 2011 20:56:44
1
-1

Într-un mod simplu `

               if ($post->post_type == 'custom-post-type') {
                   $new_content= 'Text de test aici';
                                }
                       return $content.$new_content;
18 nov. 2015 09:22:21
Comentarii

Doar codul nu este considerat un răspuns de bună calitate. Ar trebui să explici ce face codul și cum răspunde la întrebare; în acest fel, cititorii care sunt începători în programare vor înțelege răspunsul tău. Poți să explici codul tău?

cybmeta cybmeta
18 nov. 2015 14:56:31