Max Human
Ответы в темах
-
Форум: Проблемы и решения
Тема: Помогите с датойВходите в админку, далее Меню слева — Параметры — Общие и внизу увидите «Формат даты», можно настроить как душе угодно!
Всем кто участвовал — спасибо! Все заработало!
Думаю тему можно удалить…
Что никто не ведует как решить проблемы? Если просто время тратить не охота, могу заплатить…
Рассчитываю на поддержку!
Кажется, что проблема со счетчиком это уже вопрос новой темы…
Вопрос с выводом популярных записей можно считать решенным, т.к. код потихоньку собрал — записи выводятся.
Всем кто участвовал — Спасибо!
Методом научного тыка, организовал вывод данных таким способом:
<div class="widget popular"> <h3 class="widget-title">Популярные статьи</h3> <ul> <?php $args = array( 'numberposts' => 5, 'meta_key' => 'post_views_count', 'orderby' => 'meta_value_num', 'order' => 'DESC' ); query_posts($args); while ( have_posts() ) : the_post(); ?> <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> <li><?php the_post_thumbnail ('thumbnail'); ?></li> <li>Автор: <?php the_author_link(); ?></li> <li>Текст записи:<?php the_content(); ?></li> <li>Количество Просмотров записи:<?php echo get_post_meta($post->ID, 'post_views_count', true); ?></li> <li>Количество Комментариев записи:<?php comments_number('пока нет комментариев', '1 комменатрий', '% комментариев'); ?></li> <li>Рубрика: <?php the_category(' '); ?> </li> <li>Метки:<?php the_tags(' ', ', ', '<br />'); ?> </li> <li>Дата:<?php the_date(); ?></li> <li></li> <?php endwhile; wp_reset_query(); ?> </ul> </div>ВОПРОС: Насколько это правильно и корректно? Может есть способ более лаконичный?
ПРОБЛЕМА: Счетчик просмотров записи, после каждого обновления, добавляет 2 просмотра. Т.е. было 100 — обновил страницу — стало 102 — еще раз обновил, получилось 104…
Помойму так быть не должно!? Код
<?php endwhile; wp_reset_query(); ?>обнуляет счетчик, насколько я понял используется если на странице еще что то считается…Жду ваших комментариев! Заранее, Спасибо!
Нашел решение! Но нужна помощь по доработке!
Описание: выводит популярные статьи по количеству просмотров. Использованием custom fields, что позволяет при необходимости вручную скорректировать количество просмотров конкретной статьи.
Код:
— Код который надо добавить в functions.php
function setPostViews($postID) { $count_key = 'post_views_count'; $count = get_post_meta($postID, $count_key, true); if($count==''){ $count = 0; delete_post_meta($postID, $count_key); add_post_meta($postID, $count_key, '0'); }else{ $count++; update_post_meta($postID, $count_key, $count); } } function getPostViews($postID){ $count_key = 'post_views_count'; $count = get_post_meta($postID, $count_key, true); if($count==''){ delete_post_meta($postID, $count_key); add_post_meta($postID, $count_key, '0'); return "0"; } return $count; }— Вызываем счетчик в index.php внутри цикла loop
<?php setPostViews(get_the_ID()); ?>— Собственно HTML код
<div class="widget popular"> <h3 class="widget-title">Популярные статьи</h3> <ul> <?php $args = array( 'numberposts' => 5, 'meta_key' => 'post_views_count', 'orderby' => 'meta_value_num', 'order' => 'DESC' ); query_posts($args); while ( have_posts() ) : the_post(); ?> <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> <?php endwhile; wp_reset_query(); ?> </ul> </div>Вариант работает, все ок! Но данное решение выводит только заголовки статей, а мне бы хотелось организовать полноценный вывод постов:
1. Миниатюра записи;
2. Заголовок записи;
3. Текст записи (вывожу первый абзац)
4. Количество Просмотров записи
5. Количество Комментариев записи
6. Автор
7. Рубрика
8. МеткиПомогите доделать, плиз! Зарание БОЛЬШУЩИЕ спасибо!
Такс, ну в общем все получилось! Думаю не лишним будет, для новичков, если я опишу свои действия:
1. В файле index.php перед циклом (Start the Loop) добавил строку:
<?php query_posts( 'posts_per_page=1' ); ?>После этого на Главной странице появилась ссылка навигации (внизу), т.к. она там не в тему, я ее убрал…
2. В файле index.php убрал две строки:
<?php twentyeleven_content_nav( 'nav-above' ); ?>
<?php twentyeleven_content_nav( 'nav-below' ); ?>Это все!
Примечание: в фале functions.php есть функция, которая отвечает за «создание» постраничной навигации. Начинается она со строк:
if ( ! function_exists( 'twentyeleven_content_nav' ) )Че-то ринулся чистить это место, т.к. подумал раз ссылки убрали — функция не нужна. Оказывается — Нужна, для Рубрик. Так что не удаляйте ее…:))
Юрий, Вам Спасибо! А я пошел дальше, — выяснять: Как вывести популярные записи на главной странице без плагина…
Юрий, спасибо, — все получилось!
Единственное, что смущает, так это, то, что: Появляется ссылка на предыдущею запись (site.com/?paged=2) — при переходе по этой ссылке Страница той самой Предыдущей записи не отображается, а выводи меседж «Неприятная новость. Запрошенную информацию найти не удалось…»
Так должно быть?
Не хочется использовать плагин для этой задачи, там ведь кода пару строк по идее…
Еще раз уточню задачу: надо что бы на Главной всегда отображался Последний пост (понятное дело что он меняется с каждой новой публикацией)…
gradus81, вас не совсем понял! Вы предлагаете использовать функцию? А где же сама функция?
Форум: Темы и шаблоны
Тема: Меню конкретной страницыНе понимаю что и куда надо вставлять. Пример для страниц. В ПХП не разбираюсь вообще, поэтому если можно — разжуйте, плиз!
Вот это, насколько я понял, надо вставить в PAGE.PHP:
<?php &get_page_children( $page_id, $pages ) ?> <?php get_page_children( $page_id, $pages ) ?>А вот это куда?:)
<?php // Set up the objects needed $my_wp_query = new WP_Query(); $all_wp_pages = $my_wp_query->query(array('post_type' => 'page')); // Get the page as an Object $portfolio = get_page_by_title('Portfolio'); // Filter through all pages and find Portfolio's children $portfolio_children = get_page_children($portfolio->ID, $all_wp_pages); // echo what we get back from WP to the browser echo '<pre>'.print_r($portfolio_children,true).'</pre>'; ?>И что на что заменить в примере, что бы все работало?
Спасибо:)