Я использую плагин Taxonomy Meta и следовал всем инструкциям, но чувствую, что что-то не так с тем, что я делаю. Я просто хочу вытащить изображение, назначенное каждой категории, в виде пользовательской таксономии и отобразить его в шаблоне страницы.
репозиторий плагина на github можно найти здесь: https://github.com/rilwis/taxonomy-meta< /а>
пожалуйста, помогите, я могу показать все, кроме изображения, и когда я смотрю в источнике, путь к изображению не является просто пустым тегом img.
Я могу получить изображение для печати, используя это:
$meta = get_option('additional');
if (empty($meta)) $meta = array();
if (!is_array($meta)) $meta = (array) $meta;
$meta = isset($meta['5']) ? $meta['5'] : array();
$images = $meta['community-image'];
echo '<ul>';
foreach ($images as $categories) {
// get image's source based on size, can be 'thumbnail', 'medium', 'large', 'full' or registed post thumbnails sizes
$src = wp_get_attachment_image_src($categories, 'thumbnail');
$src = $src[0];
$args=array(
'orderby' => 'name',
'order' => 'ASC',
'taxonomy' => 'properties_community'
);
$categories=get_categories($args);
// show image
foreach($categories as $category) {
echo '<li><a href="' . home_url() . '/?property_communities='. $category->slug .'" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '><img src="'.$src.'"/>' . $category->name.'</a> </li> ';
}
}
echo '</ul>';
но я не могу понять, как сделать так, чтобы изображение соответствовало отображаемой категории. Я просто поместил туда число 5, чтобы увидеть, сработало ли оно, что оно и делает, но если я попытаюсь использовать $category->term_id, это не сработает, и я немного потерялся отсюда..
ОБНОВЛЕНИЕ: теперь я могу извлекать изображения, присвоенные каждой категории, и печатать имена, но получаю сообщение об ошибке «Предупреждение: для foreach() указан недопустимый аргумент в /home/../themes/ ../my-template.php в строке 39"
Вот мой код
$args = array( 'taxonomy' => 'properties_community' );
$terms = get_terms('properties_community', $args);
$count = count($terms); $i=0;
if ($count > 0) {
$cape_list = '<p class="my_term-archive">';
foreach ($terms as $term) {
$meta = get_option('additional');
if (empty($meta)) $meta = array();
if (!is_array($meta)) $meta = (array) $meta;
$meta = isset($meta[$term->term_id]) ? $meta[$term->term_id] : array();
$images = $meta['community-image'];
foreach ($images as $att) {
// get image's source based on size, can be 'thumbnail', 'medium', 'large', 'full' or registed post thumbnails sizes
$src = wp_get_attachment_image_src($att, 'medium');
$src = $src[0];
// show image
echo '<a href="/term-base/' . $term->slug . '" title="' . sprintf(__('View all post filed under %s', 'my_localization_domain'), $term->name) . '"><img src="'.$src.'" />' . $term->name . '</a>';
}}
}
Кто-нибудь понимает, почему я могу получить эту ошибку? Я не вижу ничего плохого в foreach :/
Строка 39 будет такой: foreach ($images as $att) {