Maison > Tutoriel CMS > WordPresse > le corps du texte

Comment définir les paramètres de la fonction get_term_link dans WordPress

藏色散人
Libérer: 2020-01-11 09:45:22
original
3200 Les gens l'ont consulté

Comment définir les paramètres de la fonction get_term_link dans WordPress

Comment définir les paramètres de la fonction get_term_link dans WordPress ?

Problème de paramétrage de la fonction get_term_link dans WordPress

Recommandé : "tutoriel wordpress"

Récemment aidé un Un ami écrit un thème d'entreprise et doit définir un type de publication spécial appelé produit pour le produit. Pour faciliter la gestion, j'ai défini un type de catégorie et un type de balise spéciaux pour le produit. Le type de catégorie est product_cat (le type de catégorie propre à WordPress est). catégorie ).

Pourquoi utiliser get_term_link ? :

Les nouveaux types de catégories ne peuvent pas être utilisés

<?php get_term_link( $term, $taxonomy ); ?>
Copier après la connexion

Pour référence spécifique, WordPress Codex : http://codex.wordpress.org/Function_Reference/get_term_link

Question :

Exemple Exemple :

- La variable de l'ID de catégorie personnalisée est $term $term est modifié en fonction des paramètres d'arrière-plan. Pour faciliter l'explication, il est supposé que le paramètre d'arrière-plan est. $custom_term = 8

- Je souhaite obtenir l'adresse du lien de catégorie avec un identifiant de catégorie personnalisé de $term. Selon les instructions officielles, elle devrait être :

<?php 
$term = $custom_term; 
echo get_term_link( $term, &#39;product_cat&#39;); 
?>
Copier après la connexion

Cela semble correct, mais. voici le problème. Cela renverra une erreur :

Erreur fatale capturable : l'objet de la classe WP_Error n'a pas pu être converti en chaîne dans .. C'est vrai, si vous utilisez directement echo $term ; le résultat de sortie est bien 8, ce qui est déprimant...

Mais si vous faites directement ceci :

<?php echo get_term_link( 8, &#39;product_cat&#39;); ?>
Copier après la connexion

cela fonctionnera à nouveau normalement.

Solution :

En jouant dans le Codex WordPress, j'ai accidentellement vu qu'un ami étranger rencontrait également ce problème, puis il l'a résolu lui-même, et il avait une révélation... Portail 》

Il s'avère qu'il s'agit d'un problème de type de variable. Cette fonction get_term_link est différente des autres fonctions WordPress couramment utilisées. Elle ne convertit pas le type de variable par elle-même. classe de caractères en un entier avant qu'elle puisse fonctionner correctement. Quelle superbe fonction Orz !

Ce qui suit fonctionnera normalement :

(Bolo assis sur le canapé note : intval($term, 10) sera meilleur, sinon il y aura des erreurs lorsque la valeur $term est trop grande Problème de conversion du système, ou utilisez (int)$term)

<?php 
$term = $custom_term; 
echo get_term_link( intval($term), &#39;product_cat&#39;); 
?>
Copier après la connexion

Donc, si vous rencontrez une fonction déprimante comme celle-ci à l'avenir, vous devez vous demander s'il s'agit d'un problème avec le type de données variable.

Lancer et jouer (fin).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal