С прошлого года, рынок WordPress темы вырос невероятно.В чем причина?Великие проекты, конечно, но также много удивительных новых функций.Лучшие разработчики WordPress, всегда ищет, чтобы получить максимальную отдачу от WordPress и использовать все свои знания, чтобы найти способы сделать свои любимые блоги двигателя еще более powerful.
В этой статье мы собрали 10 полезных WordPress фрагменты кода, хаки и tips, чтобы помочь вам создать тему WordPress, которая выделяется из crowd.
Вы можете быть заинтересованы в следующих связанные должности:
- Мощность Советы для шаблона WordPress Developers
- 10 Полезные WordPress Loop Hacks
- Хаки Пользовательские поля для WordPress
- Освоение WordPress Shortcuts
1.Стиль сообщения Individually
problem.Ваш блог имеет много должностей, но сообщения aren’ T все того же типа.Чтобы дать специальный стиль к одному или более из ваших сообщений, Вы можете воспользоваться как post_class()
функции и сообщение ID.
solution.Чтобы применить этот трюк, просто откройте single.php файл, найти петлю и заменить его следующим:
<?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <div <?php post_class() ?> id="post-<?php the_ID(); ?>"> <h3><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h3> <?php the_content(); ?> </div> <?php endwhile; else: ?> <?php _e('Sorry, no posts matched your criteria.'); ?> <?php endif; ?>
Код explanation.Важной частью является в основном в строке 3.Здесь мы добавили PHP post_class()
функции.Введенный в WordPress 2.8, эта функция добавляет CSS классы на эту должность.Например, можно добавить:
- . Hentry
- . Sticky
- . Категории tutorials
- . Тег-wordpress
С этими классами CSS добавили, теперь вы можете дать свой стиль, чтобы все сообщения, которые имеют sticky
теги или те, которые относятся к tutorials
category.
Другие важная часть этого кода id="post-<?php the_ID(); ?>"
.При отображении ID поста здесь, we’ повторно состоянии стиля конкретной должности.В качестве примера:
#post-876{ background:#ccc; }
Источник:
2.Отображение связанных Posts…! С эскизами
problem.После того как они прочитали ваше последнее сообщение, что ваши читатели делать?That’ просто: большинство из них просто уйти.Отличный способ, чтобы держать их интересует, чтобы отобразить список соответствующих должностей.Многие плагины могут это сделать, но для тех, кто хотел бы знать, как все работает, вот некоторые хорошие код, чтобы получить соответствующие должности и их thumbnails.
solution.Просто вставьте этот код после the_content()
функция в вашем single.php файла:
<?php $original_post = $post; $tags = wp_get_post_tags($post->ID); if ($tags) { echo '<h2>Related Posts</h2>'; $first_tag = $tags[0]->term_id; $args=array( 'tag__in' => array($first_tag), 'post__not_in' => array($post->ID), 'showposts'=>4, 'caller_get_posts'=>1 ); $my_query = new WP_Query($args); if( $my_query->have_posts() ) { echo "<ul>"; while ($my_query->have_posts()) : $my_query->the_post(); ?> <li><img src="<?php bloginfo('template_directory'); ?>/timthumb/timthumb.php?src=<?php echo get_post_meta($post->ID, "post-img", true); ?>&h=40&w=40&zc=1" alt="" /><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li> <?php endwhile; echo "</ul>"; } } $post = $original_post; wp_reset_query(); ?>
Код explanation.Во-первых, этот код использует TimbThumb, PHP изображений, изменение размера сценария.Мы использовали его, чтобы автоматически изменять размер изображений до 40 на 40 pixels.
После этого код будет вставлен в вашей теме, то используется первый тег пост для извлечения соответствующих должностей.В этом примере четырех взаимосвязанных сообщений отображается.Вы можете изменить это число на линии 10.
Также обратите внимание, что я клонированных $post
переменной в начале сценария и восстановить его в конце.Это позволяет избежать проблем, которые могут возникнуть с петлей, такие как комментарии назначаются на неправильные post.
Источник:
3.Альтернативный Styling разместите на главную Page
problem.Много новых тем WordPress есть удивительный способ отображения сообщений на главной странице.Например, мы можем увидеть первые три сообщения больше, чем остальные, с изображениями и расширенные тексты, а остальные сообщения показали более simply.
Я видел много тем, в которых разработчики используют два различных циклов для достижения этой цели, которая isn’ T необходимым и может привести к дальнейшим проблемам.Let’ S использовать гораздо проще method.
solution.Вот пользовательский цикл, который отображает первые три должности иначе, чем остальные.Вы можете заменить существующий цикл в вашей index.php файл с этой code.
<?php $postnum = 0; while (have_posts()) : the_post(); ?> <?php if ($postnum <= 3){ ?> <div <?php post_class() ?> id="post-<?php the_ID(); ?>"> <div class="date"><span><?php the_time('M j') ?></span></div> <h2>(<?php echo $postnum;?>)<a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h2> <div class="post-image" style="text-align:center;"> <a href="<?php the_permalink() ?>"><img src="<?php bloginfo('template_directory' ); ?>/timthumb.php?src=<?php echo catch_that_image(); ?>&w=500&h=200&zc=1" alt="<?php the_title(); ?>" /></a> </div> <p><?php the_content('Read the rest of this entry »'); ?></p> <p class="more"><a href="#">Read More</a></p> </div> </div> <?php } else { <div <?php post_class( 'single ' . $end ); ?> id="post-<?php the_ID(); ?>"> <div class="post-content"> <h3><a href="<?php the_permalink() ?>">(<?php echo $postnum; ?>)<?php the_title(); ?></a> <?php edit_post_link('_', '', ''); ?></h3> <p><?php the_excerpt( '' ); ?></p> <p class="more"><a href="#">Read More ?</a></p> </div> </div><!-- End post --> <?php } endwhile; ?>
Код explanation.Ничего сложного здесь!Мы только что создали PHP переменная, названная $postnum
, который вызывается в конце цикла.Если $postnum
меньше или равна 3, сообщение отображается в полном объеме.В противном случае, он отображается в его более компактным form.
4.Использование нескольких Loops
problem.При кодировании сложных страниц WordPress с более чем одной петле, может случиться, что одна из петель doesn’ T ведут себя, как ожидалось: например, нежелательные смещения, повторяется сообщений и т.д. К счастью, с небольшим количеством знаний и очень полезная функция,мы можем избежать this.
solution.Следующий пример показывает два различных циклов.Обратите внимание на rewind_posts()
функции в строке 8.Этот пример может быть использован на любом файле WordPress как: index.php single.php, etc.
// First loop (get the last 3 posts in the "featured" category) <?php query_posts('category_name=featured&showposts=3'); ?> <?php while (have_posts()) : the_post(); ?> <!-- Do stuff... --> <?php endwhile;?> //loop reset <?php rewind_posts(); ?> //Second loop (Get all posts) <?php while (have_posts()) : the_post(); ?> <!-- Do stuff... --> <?php endwhile; ?>
Код explanation.Этокусок кода doesn’ т использовать любые хаки; rewind_posts()
является стандартным WordPress function.
Цель rewind_posts()
является “ clear” цикл, который ранее был использован (как и первый цикл в нашем примере), что позволяет использовать второй цикл, который isn’ т, пострадавших от первой loop’ Sresults.
Источник:
5.Переписать заголовки сообщений Easily
problem.the_title()
является основным, но очень полезных WordPress функцию: он отображает сообщение или page’ с названием.Ни больше, ни меньше.Но эй, вы когда-нибудь хотели вы были способны отображать полное название в список сообщений и пользовательские названия на фактическое post’ S странице?Если да, то узнайте, как право here.
solution.В вашем single.php файл, найти призыв к the_title()
функции и заменить его на следующий код:
<?php $title = get_post_meta($post->ID, "custom-title", true); if ($title != "") { echo "<h1>".$title."</h1>"; } else { ?> <h1><?php the_title(); ?></h1> <?php } ?>
После that’ сделано, вы можете переписать post’ с названием, создавая поле с именем custom-title
.Его значение будет ваш пользовательский название для этого post.
Код explanation.При этом код загружает, он извлекает мета поле с именем custom-title
.Если этот мета поле существует и isn’ T пустой, он отображается как post’ название с.В противном случае the_title()
функция вызывается, а post’ регулярное название ы является displayed.
Источник:
6.Добавить несколько Sidebars
problem.Sidebars велика, поскольку они позволяют отображать много полезной информации, такой как соответствующие должности, автором информации, блог ролл, 125× 125-пикселей объявление пространства и так далее.Но боковые панели могут быстро стать очень занят, и читатели могут быть сильному нажиму, чтобы найти то, что they’ ищете.? Итак, что же с различными боковые панели доступны и отображения наиболее подходящей на пост
solution.Для установки этого хака, дублировать ваши sidebar.php файл и заполнить его с тем, что информация, которую вы хотели бы появляться.Сохраните файл с именем боковая панель-whatever.php.
После that’ сделано, откройте single.php * файл и найти призыв к get_sidebar()
функции:
<?php get_sidebar(); ?>
Замените его:
<?php $sidebar = get_post_meta($post->ID, "sidebar", true); get_sidebar($sidebar); ?>
Сейчас, когда вы пишете сообщение, создавать пользовательские поля с именем sidebar
.Установите его значение в качестве имени боковой панели …
Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров