10 полезных WordPress методы кодирования

С прошлого года, рынок WordPress темы вырос невероятно.В чем причина?Великие проекты, конечно, но также много удивительных новых функций.Лучшие разработчики WordPress, всегда ищет, чтобы получить максимальную отдачу от WordPress и использовать все свои знания, чтобы найти способы сделать свои любимые блоги двигателя еще более powerful.

В этой статье мы собрали 10 полезных WordPress фрагменты кода, хаки и tips, чтобы помочь вам создать тему WordPress, которая выделяется из crowd.

Вы можете быть заинтересованы в следующих связанные должности:

1.Стиль сообщения Individually

Screenshot

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…! С эскизами

Screenshot

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

Screenshot

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(); ?>&amp;w=500&amp;h=200&amp;zc=1" alt="<?php the_title(); ?>" /></a>
	</div>
	<p><?php the_content('Read the rest of this entry &raquo;'); ?></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

Screenshot

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

Screenshot

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

Screenshot

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.Установите его значение в качестве имени боковой панели …

Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров

Comments are closed.