Intereting Posts
Тестовые файлы для разработки плагинов Отладка, почему избранные изображения перестали отображаться в WooCommerce на главной странице Определение того, какая публикация отображается из общих сообщений Backtick (норма MySQL) добавлен в запрос SQL Server, вызывающий ошибку Пользовательские поля не отображаются для пользовательских типов сообщений Как автоматически вставлять значение настраиваемого поля в определенный термин Meta (post_tag Taxonomy)? настройка пользователя wp с настраиваемыми полями Как получить текущий пункт меню «CSS-классы»? Имя папки и название категории WordPress wpdb get_results () возвращает только 2 строки Как проверить, является ли термин родителем другому? Ограничение загрузки изображения до 10 Как сделать загрузку CSS в реальном времени на основе параметров, нажатых в настройке темы? Как я могу интегрировать yepnope.js с WordPress (и плагинами)? Родители-атрибуты

get_author_posts_url () Не работает

Все в файле single.php в детской теме Genesis .

У меня есть echo divs и между мной в одном из anchors я пытаюсь вставить URL-адрес автора через variable , например:

 function my_function() { $author = get_the_author_meta( $post->post_author ); $author_link = get_author_posts_url($author); $author_avatar = get_avatar_url(get_the_author_meta( $post->post_author )); $featured_image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' ); //.. echo '<div> // .. <div class=""> By <a href="'.$author_link.'">Author</a> </div>' </div> } genesis(); 

Я попробовал: the_author_posts_url(); , get_the_author_meta('user_url'); , get_author_posts_url(); , get_author_posts_url( get_the_author_meta( 'ID' ) ); каждый раз, когда ссылка либо пуста, либо генерирует

 http://localhost/author 

без вывода конкретного автора.

полный код single.php находится здесь:

function custom_entry_content () {$ author = get_the_author_meta ($ post-> post_author);

 $author_link = get_author_posts_url($author); $author_avatar = get_avatar_url(get_the_author_meta( $post->post_author )); $featured_image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' ); echo '<div style="margin-bottom: 50px;position: relative; text-align:center; width:100%;background-image: url('.$featured_image[0].'); height: 502px; background-size: cover; background-repeat: no-repeat;"> <div class="post-title-box"> <h1 class="the-title"> '. get_the_title(). '</h1> </div> <div class="post-auth-info"> <div class="vertical-middle" style="display:inline-block"> <div class=""> By <a href="'.$author_link.'">Author</a> </div> <time class="mk-publish-date" datetime="2017-11-01"> <a href="#">Published ' . time_elapsed_string(get_the_date()). '</a> </time> </div> <div style="display:inline-block"> <a href="'.$author_link.'"> <div> <img alt="" src="'.$author_avatar.'" class="img-circle avatar avatar-55 " height="55" width="55" style="height:55px;width:55px"> </div> </a> </div> </div> </div>'; } // Removes Published by and time data from before the post content area remove_action( 'genesis_entry_header', 'genesis_post_info', 12); add_filter( 'genesis_attr_site-inner', 'remove_top_padding'); function remove_top_padding( $attributes ) { $attributes['class'] = 'container box nopadding'; return $attributes; } // Adds left padding to content add_filter( 'genesis_attr_content', 'padding_left'); function padding_left( $attributes ) { if ( 'full-width-content' === genesis_site_layout() ) $attributes['class'] = ''; else $attributes['class'] = 'col-md-8 single-post-entry'; return $attributes; } genesis(); 

Спасибо заранее!

Solutions Collecting From Web of "get_author_posts_url () Не работает"

get_the_author_meta ()

get_author_posts_url ()

get_avatar_url ()

Вы используете все три из этих функций неправильно. Всегда проверяйте документацию в первую очередь. get_the_author_meta() не требует никаких аргументов, но вы можете указать поле, которое хотите вернуть. get_author_posts_url() требует user_id. get_author_posts_url() и этот бит является более гибким и будет принимать user_id или различные объекты.

Ниже приведен пример кода ниже …

 $author_id = get_the_author_meta( 'ID' ); $author_link = get_author_posts_url( $author_id ); $author_avatar = get_avatar_url( $author_id ); $featured_image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' ); echo '<div> <div class=""> By <a href="' . esc_url( $author_link ) . '">Author</a> </div> </div>'; 

Спасибо всем, кто помог, кажется, что основная проблема заключалась в том, что у меня не было global $post объявленной внутри функции.

Также после настройки объявления author_id все приступило к работе, вот окончательный код:

 function single_post_entry() { global $post; $author_id = $post->post_author; $author_link = get_author_posts_url( $author_id ); $author_avatar = get_avatar_url( $author_id ); $featured_image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' ); // .. echo '<div> By <a href="' . esc_url( $author_link ) . '">Author</a> </div>'; }