
Kiel Sindikati Eksterajn RSS Fluojn En Via WordPress-Temo aŭ Infana Temo
Iuj homoj ne rimarkas ĝin, sed WordPress integris la kapablon sindikatiĝi RSS nutraĵoj kun kelkaj eksterordinaraj funkcioj. Dum ekzistas fenestraĵoj por fari tion, vi eble volas inkluzivi la kapablon publikigi aliajn fluojn rekte en vian WordPress-ŝablonon.
WordPress subtenas kaj Magpie kaj SimplePie RSS Caching ene de sia disponebla funkcio, alportu_fluon:
- alportu_fluon – prenu RSS-fluon de URL kun aŭtomata kaŝmemoro
Ĉi tio vere utilas se vi havas plurajn retejojn kaj volas dividi viajn blogajn afiŝojn sur la aliaj retejoj tuj kiam ili publikigas. Ĝi ankaŭ povas esti bela de an SEO starpunkto, produktante backlinks sur alia retejo aŭtomate dum vi publikigas vian enhavon.
Mi ankaŭ uzis ĉi tiun aliron por publikigi podkastojn kaj videofluojn de unu retejo al alia.
WordPress Temo aŭ Infana Temo Ŝablono
// Get RSS Feed(s)
include_once( ABSPATH . WPINC . '/feed.php' );
$rss = fetch_feed('https://feed.martech.zone');
if ( ! is_wp_error( $rss ) ) :
$maxitems = $rss->get_item_quantity( 5 );
$items = array_slice($rss->get_items, 0, $maxitems);
endif;
?>
<ul>
<?php if (empty($items)) echo '<li>No items</li>';
else
foreach ( $items as $item ) : ?>
<li><a href='<?php echo esc_url( $item->get_permalink() ); ?>'
title='<?php printf( __( 'Posted %s', 'my-text-domain' ), $item->get_date('j F Y | g:i a') ); ?>'>
<?php echo esc_html( $item->get_title() ); ?>
</a></li>
<?php endforeach; ?>
<?php endif; ?>
</ul>
Se vi publikigas kaj ne tuj vidas vian novan afiŝon en alia retejo, memoru, ke fetch_feed kaŝmemorigas defaŭlte 12 horojn. Vi povas modifi ĉi tion modifante la tempintervalon per la filtrilo wp_feed_cache_transient_lifetime.
function update_cache_time( $seconds )
{
// change the default feed cache recreation period to 1 hour
return (int) 3600;
}
//set feed cache duration
add_filter( 'wp_feed_cache_transient_lifetime', 'update_cache_time');
Se vi ŝatus ĝisdatigi la kaŝmemoron por specifa nutraĵo, vi povas apliki la filtrilon, preni la feed, kaj poste reapliki la defaŭltan kaŝmemortempon ĝisdatigante vian kodon jene:
// filter to set cache lifetime
add_filter( 'wp_feed_cache_transient_lifetime' , 'update_cache_time' );
$rss = fetch_feed( $feed_url );
// reset the cache lifetime to default value
remove_filter( 'wp_feed_cache_transient_lifetime' , 'update_cache_time' );
Redaktu vian WordPress-ŝablonon (Dezajno > Temo-Redaktilo) kaj metu la kodon kie vi ŝatus la publikigon de la fonto. Ekzistas ankaŭ multe da flankaj fenestraĵoj tie, kiuj publikigos fluojn ankaŭ por vi.
Vi povas reeldoni vian propran enhavon ankaŭ, ne nur aliajn. Mi faris tion dum kelka tempo ĉe SMJdesign ĉar ĉio ĝi estas blogo kiu estas agregado de miaj kvar blogoj. Mi preferas uzi FeedList kromaĵo anstataŭ la enkonstruita RSS-funkcio.
Vi povas uzi ĉi tion por Twitter-flanka blogo aŭ io ajn, kiu havas RSS-fluon!
Bone vidi vin en la rondo, Stefano! Ĉu vi scivolas pri la avantaĝoj de la kromaĵo super la enkonstruitaj funkcioj? Ĉu ĝi estas simple la interfaco? Mi ŝatas la fakton, ke kaŝmemoro estas konstruita en la internan funkcion - por altvolumaj tagoj/ejoj, tio povus esti utila!
Vivas!
Doug
Brila - ĝuste ĉi tio mi bezonas! Mi laboris pri retejo de WP MU kaj mi simple volas, ke la ĉefa blogo nur montru paĝon kun bela grafikaĵo por ĉiu el la blogoj. Nun, mi povas aldoni kelkajn afiŝojn sub ĉiu grafikaĵo prefere ol pendigi ilin sur la flanka kolumno per la RSS-fenestraĵo.
Mirinda, Vilhelmo!
La amuza parto estas, ke mi estis duonvoje en la vojo de efektivigo de MagPie kiam mi decidis kontroli la WP-ejon por vidi kiel aliaj povus fari ĝin. Tiuj homoj ĉe WP vere faras mirindan laboron, ĉu ne?
Doug