Jak do rss výpisu přidat odkaz na článek

Úvodní stránka Fórum podpory WordPressu Problémy s WordPressem Jak do rss výpisu přidat odkaz na článek

Štítky: ,

Zvolené téma obsahuje celkem 6 odpovědí. Do diskuze (3 účastníci) se naposledy zapojil uživatel  admin a poslední změna je stará 12 let, 8 měsíců.

Aktuálně je na stránce zobrazeno 7 příspěvků - 1. až 7. (z celkem 7)
  • Autor
    Příspěvky
  • #1081

    n3s4
    Participant

    Ahoj, jsem tu s další perličkou :) Jak dostat do výpisu RSS i odkaz na daný článek? Jde to udělat? A pomohl by mi s tím někdo?

    Přečetl jsem si zde Váš návod na úpravu RSS obsahu ale nejde mi do výpisu přidat odkaz na ten článek.

    Potřebuji tam mít odkaz na ten daný článek ve tvaru Přečíst celý článek.

    Předem děkuji za pomoc.

    #8794

    admin
    Keymaster
    Web

    Mělo by to jít vcelku jednoduše, a to přidáním vlastních funkcí do souboru functions.php (případně vytvořením samostatného pluginu).

    1) Nejdříve nadefinujeme funkci s odkazem:

    function separatista_odkaz_cely_clanek() {
    return ' <a href="'. esc_url( get_permalink() ) . '">Přečíst celý článek</a>';
    }

    2) Odkaz zobrazíme v RSS zdroji (zcela na konci) pomocí filtru the_excerpt_rss:

    function separatista_vlozit_odkaz_rss( $content ) {
    $content .= separatista_odkaz_cely_clanek();
    return $content;
    }
    add_filter( 'the_excerpt_rss', 'separatista_vlozit_odkaz_rss' );

    3) Nakonec ještě odstraníme výchozí odkaz pro pokračování článku […] v případě automatického oříznutí, a to pomocí filtru excerpt_more:

    function separatista_vlastni_znacka_more( $more ) {
    if ( is_feed() ) {
    $more = '';
    }
    return $more;
    }
    add_filter( 'excerpt_more', 'separatista_vlastni_znacka_more' );

    Předpokladem funkčnosti je nastavení RSS v menu Nastavení – Zobrazování – Položky v RSS zobrazovat jako – Pouze několik úvodních vět. V případě jiného nastavení by se musel kód trochu upravit a použít jiné filtry…

    Víceméně stejného řešení lze dosáhnout i pomocí filtrů get_the_excerpt (s podmínkou is_feed() pro omezení na RSS zdroj) a opět excerpt_more. Ale výše uvedená ukázka by měla fungovat také, vyzkoušejte…

    Upravil admin, doplněna uvozovka.

    #8795

    n3s4
    Participant

    Aha, no ale pokud toto zadám do functions.php, (tak mi to v editoru – dreamweaver – ukáže syntaxe error) dělám to správně, či nikoliv?

    function separatista_odkaz_cely_clanek() {
    return ' <a href="'. esc_url( get_permalink() ) . '">Přečíst celý článek</a>';
    }

    function separatista_vlozit_odkaz_rss( $content ) {
    $content .= separatista_odkaz_cely_clanek();
    return $content;
    }
    add_filter( the_excerpt_rss', 'separatista_vlozit_odkaz_rss' );

    function separatista_vlastni_znacka_more( $more ) {
    if ( is_feed() ) {
    $more = '';
    }
    return $more;
    }
    add_filter( 'excerpt_more', 'separatista_vlastni_znacka_more' );

    #8796

    n3s4
    Participant

    tu chybu mi to ukazuje u řádku

    add_filter( the_excerpt_rss', 'separatista_vlozit_odkaz_rss' );

    #8797

    J-Prause
    Participant

    tu chybu mi to ukazuje u řádku add_filter( the_excerpt_rss’, ‘separatista_vlozit_odkaz_rss’ );

    Nechybí tam levá uvozovka?

    #8798

    n3s4
    Participant

    pravda :) chyběla tam uvozovka před the_excerpt_rss'

    Díky moc nyní to funguje ;)

    #8799

    admin
    Keymaster
    Web

    J-Prause: Díky! Musel to nějakým záhadným způsobem odříznout editor, protože kód jsem testoval přímo ve WordPressu a vše fungovalo bez chyby…

    n3s4: U mého původního příspěvku jsem to opravil.

Aktuálně je na stránce zobrazeno 7 příspěvků - 1. až 7. (z celkem 7)

Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.

WordPress – novinky, návody a zajímavosti