#php #wordpress #woocommerce
#php #wordpress #woocommerce
Вопрос:
Я хочу страницу http://zanifesto.com/product/boise-infographic / вернитесь к http://zanifesto.com/gallery , а не на страницу категории инфографики по ссылке «Назад к» вверху.
Когда я заменяю .home_url и т.д. И т.п., Которые вы видите ниже, на URL галереи, упомянутый выше, он выдает ошибку.
Я пытаюсь понять, почему php-код не действует так, как будто я заменяю один URL на другой.
<div class="product_navigation desktops">
<?php
$term_list = '';
$j=0;
foreach ($terms as $term) {
if($term->parent==0){
$j ;
if( $j <= 1 ){
$term_list .= '<a href="'.home_url() . '/' . $category_slug . '/'. $term->slug . '">' . $term->name . '</a>';
}
}
}
if(strlen($term_list) > 0){ echo '<div class="nav-back">amp;lsaquo;amp;nbsp;amp;nbsp;amp;nbsp;'. __('Back to ', 'theretailer').$term_list.'</div>'; };
?>
<?php if (function_exists('be_previous_post_link')) { ?>
<div class="nav-next-single"><?php be_next_post_link( '%link', '', true,'', 'product_cat' ); ?></div>
<div class="nav-previous-single"><?php be_previous_post_link( '%link', '', true,'', 'product_cat' ); ?></div>
<div class="nav-prev-next-txt"><?php _e('Prev / Next', 'theretailer'); ?></div>
<?php } ?>
<div class="clr"></div>
</div>
<?php } ?>
Ответ №1:
этот взлом кода может сделать то, что вы хотите…
<?php
$term_list = '';
$j=0;
foreach ($terms as $term) {
if($term->parent==0){
$j ;
if( $j <= 1 ){
$url=home_url() . '/' . $category_slug . '/'. $term->slug;
if($url=='http://zanifesto.com/product-category/infographics'){
$url='http://zanifesto.com/gallery';
}
$term_list .= '<a href="'. $url . '">' . $term->name . '</a>';
}
}
}
if(strlen($term_list) > 0){ echo '<div class="nav-back">amp;lsaquo;amp;nbsp;amp;nbsp;amp;nbsp;'. __('Back to ', 'theretailer').$term_list.'</div>'; };
?>
Комментарии:
1. Итак, если я правильно понимаю, там написано if ‘home_url() . ‘/’ . $category_slug . ‘/’. $term-> slug;’ имеет значение равно zanifesto.com/product-category/infographics , тогда он должен использовать URL галереи?
2. Могу ли я аналогичным образом жестко запрограммировать название термина? Я попытался добавить
if($term->name=='Infographics'){$term->name='Gallery';
, но ему это не понравилось.3. если вы установите $ term-> name=’Gallery’, только текст ссылки изменится на gallery, вам нужно установить URL в атрибуте href тега привязки на » zanifesto.com/gallery «, здесь я добавил переменную $url в строку, которая формирует ссылку