Het creëren van een aangepaste 'De berichten waarop ik heb gereageerd' Loop

Soms heeft een WordPress-ontwikkelaar aangepaste loops nodig die niet met standaardlussen kunnen worden gegenereerd als categorie, auteur, index, datum, archief, taxonomie, enz. Een daarvan is "de berichten waarop ik heb gereageerdIn Q & A-sites betekent dit 'de vragen die ik heb beantwoord', dus het kan voor veel ontwikkelaars nodig zijn. Op basis van deze tutorial kunnen we nog een aangepaste loops maken. Laten we deze sectie maken.


Stap 1

Ga naar je themamap en maak een myanswers.php bestand, kopieer en plak vervolgens de volgende code daar:

     

We hebben zojuist een sjabloonbestand gemaakt met de naam myanswers. Het zal worden gebruikt voor het weergeven van onze aangepaste lus.


Stap 2

Blijf in je themamap en maak een tweede bestand met de naam loop-myanswers.php. En plak de volgende code in dat bestand:

 query_vars ['paged'] == 0) $ wp_query-> query_vars ['paged'] = 1; $ querystr = "SELECT $ wpdb-> posts. * FROM $ wpdb-> posts inner join $ wpdb-> comments op $ wpdb-> posts.ID = $ wpdb-> comments.comment_post_ID WHERE $ wpdb-> posts.post_status = 'publish' en $ wpdb-> comments.user_id = ". wp_get_current_user () -> ID." GROEP OP $ wpdb-> posts.ID ORDER BY $ wpdb-> posts.post_date DESC "; $ lim_per_page = "limit". ($ wp_query-> query_vars ["posts_per_page"] * ($ wp_query-> query_vars ['paged'] - 1)). ",". $ wp_query-> query_vars ["posts_per_page"]; $ query_for_count = $ wpdb-> get_results ($ querystr, OBJECT); $ Wp_query-> max_num_pages = ceil ($ wpdb-> NUM_ROWS / $ wp_query-> query_vars [ "posts_per_page"]); $ Querystr = $ querystr $ lim_per_page.; $ pageposts = $ wpdb-> get_results ($ querystr, OBJECT); ?>      
>

"title =""rel =" bladwijzer ">

?', 'twintig tien' ) ); ?> '
'. __ ('Pagina's:', 'twintigten'), 'na' => '
')); ?>
Geplaatst in % 2 $ s ',' twentyten '),' entry-utility-prep entry-utility-prep-cat-links ', get_the_category_list (', ')); ?> | tagged % 2 $ s ',' twintigten '),' entry-utility-prep entry-utility-prep-tag-links ', $ tags_list); ?> | | ',''); ?>

Niet gevonden

Sorry, maar je bent op zoek naar iets dat er niet is.

max_num_pages; if ($ wp_query-> max_num_pages> 1):?>
? Previous ',' twentyten ')); ?>
?', 'twintig tien' ) ); ?>

Dit bestand is bedoeld voor het genereren van onze aangepaste lus in het sjabloonbestand.


Stap 3

Open het bestand met de themafuncties van uw thema (functions.php) en voeg deze functie toe en filter naar dat bestand:

 add_filter ('query_vars', 'parameter_queryvars'); function parameter_queryvars ($ qvars) / * Plugin Name: Parameter Plugin URI: http://webopius.com/ Beschrijving: Een plug-in om parameters in de URL door te laten en te herkennen aan WordPress Auteur: Adam Boyse Versie: 1.0 Author URI : http://www.webopius.com/ * / $ qvars [] = 'paged'; return $ qvars; 

Deze paar functie en filter is voor het verkrijgen van paginacode die nodig is voor het opbouwen van paginering in sites met permalink-gestructureerde.


Stap 4

Eindelijk, ga naar je Dashboard, maak een nieuwe pagina van Pages-> Voeg nieuw toe en noem het "myanswers", standaard zal zijn naaktslak myanswers zijn. Voordat u een selectiesjabloon publiceert voor deze pagina. In de sjabloonwidget ziet u de combobox die de optie myanswers bevat. Selecteer het.


Na het selecteren van de myanswers-optie klikt u op de knop Publiceren.


Gedaan!

U kunt nu uwsite.com/myanswers url gebruiken als pagina met de lus van "de berichten waarop u hebt gereageerd". En natuurlijk kan niet alleen u, elke ingelogde gebruiker zijn eigen gebruiker zien.