PHP Получить элемент за классом в виджете (WordPress)

Теперь мой тикер $ в сообщениях определяется тегом, и он отлично работает для виджета

Global $wp_query;
$post_id = $wp_query->get_queried_object_id();
$tags = wp_get_post_tags($post_id);
$category = get_the_category($post_id);
$isHome = is_front_page();
$isArticle = !(empty($tags) || is_category());
//if (!$isHome && !$isArticle && empty($args['force'])) return;

// before and after widget arguments are defined by themes
echo $args['before_widget'];
if (!empty($title))

echo $args['before_title'] . $title . $args['after_title'];
$ticker = tr_get_ticker($post_id);

$sector = tr_get_sector($post_id);


if( $title = apply_filters( 'widget_title', $instance['title'] ) )
echo $args['before_title'] . $title . $args['after_title']; ?>


<div class="more-equities-research-at-tipranks" style="margin: 25px 0 15px 0;">
<h3>More <span class="equities-name"><?php echo $ticker ?></span> Research at TipRanks</h3>

тег скриншота

но есть посты, в которых нет тегов.
И мне нужно получить $ ticker из тегов ИЛИ из span в статьях:

скриншот тикера класса span

Что я должен делать?

А вот тег поиска по необходимости:

function tr_get_ticker($post_ID) {
$ticker = get_post_meta($post_ID, 'ticker', TRUE);
if (empty($ticker)) {
$tags = wp_get_post_tags($post_ID);
foreach ($tags as $tag) {
$term = $tag->name;
$isTicker = strlen($term) <= 5 && ctype_upper($term);
$isTickerWeak = strlen($term) <= 5;
if ($isTickerWeak) {
$ticker = $term;
}
if ($isTicker) {
$ticker = $term;
break;
}

}
}

return strtoupper($ticker);

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]