'70', 'ark_imgurl' => '', 'ark_maxword' => '24', 'ark_bgcolor' => '#FFF', 'ark_nobgcolor' => '0', 'ark_bordercolor' => '#C7C7C7', 'ark_nobordercolor' => '0', 'ark_width' => '96', 'ark_title' => 'Материалы по теме:', 'ark_titlecolor' => '#215B9B', 'ark_titleshadow' => '1', 'ark_titleshadowcolor' => '#5DB6FA', 'ark_titleshadowx' => '1', 'ark_titleshadowy' => '1', 'ark_titleshadowr' => '1', 'ark_titlefontsize' => '20', 'ark_titletop' => '4', 'ark_textcolor' => '#000', 'ark_textfontsize' => '12', 'ark_orientation' => '0', 'ark_subtitlefontsize' => '14', 'ark_subtitlecolor' => '#3366DD', 'ark_subtitlesymbol' => '', 'ark_maxposts' => '5', 'ark_maxgposts' => '4', 'ark_source' => '0', 'ark_borderradius' => '10', 'ark_imgborderradius' => '4', 'ark_setdivheight' => '0', 'ark_targetblank' => '0', 'ark_first' => '0', 'ark_hand' => '0', ); add_option('ark_relpost', $ark_option,'','no'); } // Хук вставки в админ меню add_action('admin_menu', 'ark_rp_add_pages'); // Акция предыдущено хука function ark_rp_add_pages() { // Добавляем новое субменю в Options: add_options_page('ark_relatedpost', 'Связанные записи', 'manage_options', 'ark_rp_ostoptions', 'ark_rp_options_page'); } /* Подключаем Iris Color Picker ----------------------------------------------------------------- */ function add_admin_iris_scripts( $hook ){ // подключаем IRIS wp_enqueue_script( 'wp-color-picker' ); wp_enqueue_style( 'wp-color-picker' ); // подключаем свой файл скрипта wp_enqueue_script('plugin-script', plugins_url('js/plugin-script.js', __FILE__), array('wp-color-picker'), false, 1 ); } add_action( 'admin_enqueue_scripts', 'add_admin_iris_scripts' ); // Вывод страницы опций в субменю function ark_rp_options_page() { screen_icon('users'); echo '

Плагин ark-relatedpost

Пожертвовать
'; ?>

Настройки связанных записей

$_POST['ark_imgsize'], 'ark_imgurl' => $_POST['ark_imgurl'], 'ark_maxword' => $_POST['ark_maxword'], 'ark_bgcolor' => $_POST['ark_bgcolor'], 'ark_nobgcolor' => $_POST['ark_nobgcolor'], 'ark_bordercolor' => $_POST['ark_bordercolor'], 'ark_nobordercolor' => $_POST['ark_nobordercolor'], 'ark_width' => $_POST['ark_width'], 'ark_titlecolor' => $_POST['ark_titlecolor'], 'ark_titleshadow' => $_POST['ark_titleshadow'], 'ark_titleshadowcolor' => $_POST['ark_titleshadowcolor'], 'ark_titleshadowx' => $_POST['ark_titleshadowx'], 'ark_titleshadowy' => $_POST['ark_titleshadowy'], 'ark_titleshadowr' => $_POST['ark_titleshadowr'], 'ark_textcolor' => $_POST['ark_textcolor'], 'ark_titlefontsize' => $_POST['ark_titlefontsize'], 'ark_titletop' => $_POST['ark_titletop'], 'ark_textfontsize' => $_POST['ark_textfontsize'], 'ark_orientation' => $_POST['ark_orientation'], 'ark_subtitlefontsize' => $_POST['ark_subtitlefontsize'], 'ark_subtitlecolor' => $_POST['ark_subtitlecolor'], 'ark_subtitlesymbol' => $_POST['ark_subtitlesymbol'], 'ark_maxposts' => $_POST['ark_maxposts'], 'ark_title' => $_POST['ark_title'], 'ark_maxgposts' => $_POST['ark_maxgposts'], 'ark_source' => $_POST['ark_source'], 'ark_borderradius' => $_POST['ark_borderradius'], 'ark_imgborderradius' => $_POST['ark_imgborderradius'], 'ark_setdivheight' => $_POST['ark_setdivheight'], 'ark_targetblank' => $_POST['ark_targetblank'], 'ark_first' => $_POST['ark_first'], 'ark_hand' => $_POST['ark_hand'], ); update_option('ark_relpost', $ark_option); echo '

'.__('Settings saved.').'

'; } else if ( isset($_POST['reset']) ) { // При сбросе: удаляем записи опций из БД delete_option( 'ark_relpost' ); ark_init_option(); echo '

' . 'Настройки успешно восстановлены по умолчанию.' . '

'; } ?>

Источник связанных записей

> Выбирать записи на основе тегов (меток)    > Выбирать записи на основе категорий

Основной блок

Фон блока:  Прозрачный /> или  Основной фон блока вывода связанных записей
Цвет рамки блока:  Убрать рамку /> или  Если рамка не нужна, установите флажок "Убрать рамку".
Ширина блока относительно родительского контейнера % 
Закругление углов блока (ноль, если не надо)



Заголовок блока Отступ от верхнего края блока px 
Размер шрифта px 
Эффект тени шрифта заголовка />
Настройка тени:
 сдвиг по X px   сдвиг по Y px   размытие px 



Ширина миниатюры px  Чтобы не выводить миниатюру - установите ширину в ноль. Не влияет на горизонтальный вывод! При горизонтальном выводе записей размеры миниатюр определяются автоматически и зависят от количества записей в строке.
URL собственной картинки-заглушки, которая будет выводиться когда не найдена миниатюра. Может располагаться на стороннем хосте.
Закругление углов миниатюры (ноль, если не надо

 Количество выводимых постов
 Открывать ссылки на связанные записи в новой вкладке />  Может быть полезно для предотвращения преждевременного ухода со страницы (отказы)


Формат вывода связанных записей > Вертикально    > Горизонтально
Ограничитель горизонтального вывода
Если записей выводится больше указанного количества, то они будут размещены с новой строки

Выравнивать блоки по высоте />  (только для горизонтального вывода)
Высота блоков будет рассчитана по хитрой формуле в основу которой положены размеры картинки, шрифтов заголовка и описания, а так-же количество слов в описании. Так, что поэкспериментируйте с этими параметрами для достижения наилучшего результата.

Ссылка - название статьи

Размер шрифта px   
Свой символ перед заголовком статьи   Необязательно. Можно использовать по желанию, например: "☛", "☑", "●" или "▪"


Описание

Количество слов в описании Чтобы не выводить описание - установите количество в ноль.
Размер шрифта px   


/i', $post->post_content, $matches); $first_img = $matches [1] [0]; return $first_img; } // Материалы по теме function get_ark_related_posts() { $result = get_option('ark_relpost'); $arkImgSize = $result['ark_imgsize']; $arkMaxWord = $result['ark_maxword']; $arkTitle = $result['ark_title']; $arkWidth = $result['ark_width']; $userimgurl = $result['ark_imgurl']; $arkborderradius = 'border-radius: '.$result['ark_borderradius'].'px; -moz-border-radius: '.$result['ark_borderradius'].'px '.$result['ark_borderradius'].'px '.$result['ark_borderradius'].'px '.$result['ark_borderradius'].'px; -webkit-border-bottom-left-radius:'.$result['ark_borderradius'].'px; -webkit-border-bottom-right-radius:'.$result['ark_borderradius'].'px; -webkit-border-top-left-radius:'.$result['ark_borderradius'].'px; -webkit-border-top-right-radius:'.$result['ark_borderradius'].'px;'; $arkimgborderradius = 'border-radius: '.$result['ark_imgborderradius'].'px; -moz-border-radius: '.$result['ark_imgborderradius'].'px '.$result['ark_imgborderradius'].'px '.$result['ark_imgborderradius'].'px '.$result['ark_imgborderradius'].'px; -webkit-border-bottom-left-radius:'.$result['ark_imgborderradius'].'px; -webkit-border-bottom-right-radius:'.$result['ark_imgborderradius'].'px; -webkit-border-top-left-radius:'.$result['ark_imgborderradius'].'px; -webkit-border-top-right-radius:'.$result['ark_imgborderradius'].'px;'; if ($result['ark_titleshadow'] == 1) {$arktitleshadow = 'text-shadow:'. $result['ark_titleshadowx'] .'px '. $result['ark_titleshadowy'] .'px '. $result['ark_titleshadowr'] .'px '. $result['ark_titleshadowcolor'] .' !important;'; } else {$arktitleshadow = 'text-shadow: 0px 0px 0px !important;';} if ($result['ark_nobgcolor'] == 1) {$arkbgcolor = 'background: none !important;'; } else {$arkbgcolor = 'background:' . $result['ark_bgcolor'] .' !important;';} if ($result['ark_nobordercolor'] == 1) {$arkborder = 'border: 0px !important;'; $arkborderradius=''; } else {$arkborder = 'border: 1px solid ' . $result['ark_bordercolor'] .' !important;';} $MaxGPosts = 0; $CntPosts = 0; if ($result['ark_source']==0) { $tags = wp_get_post_tags(get_the_ID()); if ($tags) { $tag_ids = array(); foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id; $args=array( 'tag__in' => $tag_ids, // Сортировка происходит по тегам (меткам) 'orderby'=>rand(), // Добавляем условие сортировки рандом (случайный подбор) 'caller_get_posts'=>1, // Запрещаем повторение ссылок 'post__not_in' => array(get_the_ID()), 'showposts'=>$result['ark_maxposts'] // Цифра означает количество выводимых записей ); } } else { $categories = get_the_category($post->ID); if ($categories) { $category_ids = array(); foreach($categories as $individual_category) $category_ids[] = $individual_category->term_id; $args=array( 'category__in' => $category_ids, 'post__not_in' => array(get_the_ID()), 'showposts'=>$result['ark_maxposts'], 'caller_get_posts'=>1); } } $my_query = new wp_query($args); $outtmp = ''; if( $my_query->have_posts() ) { // Основной блок $arkrpbeg = '
'; // Заголовок основного блока $arkrpbeg = $arkrpbeg . '

' . $result['ark_title'] . '

'; $arkrpbeg = $arkrpbeg . ''; $arkrpend = '
'; $arksubtitlesymbol = trim($result['ark_subtitlesymbol']); if ($arksubtitlesymbol!= '') { $arksubtitlesymbol.=' '; } if ($result['ark_nobgcolor'] == 1) {$arkbgdivcolor = 'none'; } else {$arkbgdivcolor = $result['ark_bgcolor'] ;} while ($my_query->have_posts()) { $my_query->the_post(); $arkpostlinks = get_permalink(); if ($result['ark_orientation']==0) { // Настройки вертикального вывода $arkdivheight = $result['ark_imgsize'] + 8; $arkdivheight = $arkdivheight . 'px;'; $arkrpbegpost = '
'; $arkrpendpost = '
'; $arkpbeforeimage=''; $arkpafterimage=''; $arkimgalign = 'left'; $arkdivstyle = 'line-height: 110% !important; padding-top:10px; font-weight: normal !important; text-align: left !important;'; // Определяем картинку $arkpimg = ''; } else { // Настройки горизонтального вывода if ($result['ark_maxgposts']>0) { $arkmaxprocwidth = intval(100/$result['ark_maxgposts'])-1 . '%;'; } else { $arkmaxprocwidth = '25%;'; } $MaxGPosts++; $CntPosts++; if ($result['ark_setdivheight'] == 1) { $arkdivheight = $result['ark_imgsize'] + 20 + ($result['ark_subtitlefontsize']*5) + intval($arkMaxWord*$result['ark_maxgposts']/2*($result['ark_textfontsize']/5))+($result['ark_textfontsize']*$result['ark_maxgposts']); $arkdivheight = $arkdivheight . 'px;'; } else { $arkdivheight = '100%;'; } $arkdivstyle = 'display:inline; float:left; max-width:'.$arkmaxprocwidth.' width:'.$arkmaxprocwidth.'min-width:50px;border:0px; margin:2px; text-align:left !important; height:'.$arkdivheight.' min-height:'.$arkdivheight.' max-height:'.$arkdivheight.' padding:0px; overflow:hidden;'; $arkrpbegpost = '
'; if ($MaxGPosts==$result['ark_maxgposts']) { //$arkrpbegpost = '' . $arkrpbegpost; $MaxGPosts=0; $arkrpendpost = '
'; } else { $arkrpendpost = ''; } $arkpbeforeimage='
'; $arkpafterimage='
'; $arkimgalign = 'top'; // Определяем картинку $arkpimg = ''; } // Конец настроек вывода // Определяем картинку $arkpimg = $arkpbeforeimage . $arkpimg . $arkpafterimage; if ($result['ark_imgsize']>0) { /*$arkrp = '';*/ $arkrp = $arkrp . $arkpimg; /*$arkrp = $arkrp . '' ;*/ } else { $arkrp = ''; } $arkpimg = $arkrp; $arkrp = ''; // Конец определения картинки // Заголовок записи $arksubtitle = '
' . $arksubtitlesymbol . get_the_title() . '
'; //$arkrp = $arkrp .$arksubtitle; // Вывод описания if ($arkMaxWord > 0) { $arkrp = $arkrp . '
'; $arkrp = $arkrp . ark_content_rss('', TRUE, '', $arkMaxWord); $arkrp = $arkrp . '
'; $arkopis = $arkrp; } // Конец настроек вывода if ($result['ark_targetblank']==1) { $arkptarget = 'target="_blank"'; } else { $arkptarget = ''; } if ($result['ark_orientation']==0) { $outtmp = $outtmp . '' . $arkrpbegpost . $arkpimg . $arksubtitle . $arkopis . $arkrpendpost . ''; }else{ $outtmp = $outtmp . $arkdivtbl . '' . $arkrpbegpost . $arkpimg . $arksubtitle . $arkopis . $arkrpendpost . ''; } $arkrpbegpost = ''; $arkrp = ''; $arkrpendpost = ''; } if ($result['ark_orientation']==0) { $outtmp = $outtmp . ''; } $out = $arkrpbeg . $outtmp . '' . $arkrpend; //echo $out; wp_reset_query(); return $out; } // Материалы по теме End } add_filter( 'the_content', 'ark_related_posts_auto', 999 ); function ark_related_posts_auto( $content ) { if (is_single ()) { $arkrelatedpost = get_ark_related_posts(); $content = $content . $arkrelatedpost; } return $content; } function ark_content_rss($more_link_text='(more...)', $stripteaser=0, $more_file='', $cut = 0, $encode_html = 0) { _deprecated_function( __FUNCTION__, '2.9', 'the_content_feed' ); $content = get_the_content($more_link_text, $stripteaser); $content = apply_filters('ark_content_rss', $content); if ( $cut && !$encode_html ) $encode_html = 2; if ( 1== $encode_html ) { $content = esc_html($content); $cut = 0; } elseif ( 0 == $encode_html ) { $content = make_url_footnote($content); } elseif ( 2 == $encode_html ) { $content = strip_tags($content); } if ( $cut ) { $blah = explode(' ', $content); if ( count($blah) > $cut ) { $k = $cut; $use_dotdotdot = 1; } else { $k = count($blah); $use_dotdotdot = 0; } /** @todo Check performance, might be faster to use array slice instead. */ for ( $i=0; $i<$k; $i++ ) $excerpt .= $blah[$i].' '; $excerpt .= ($use_dotdotdot) ? '...' : ''; $content = $excerpt; } $content = preg_replace("#\[.*?\]#","",$content); $content = str_replace(']]>', ']]>', $content); return $content; /*return cropStr($content, $cut); */ } function cropStr($str, $size){ return mb_substr($str,0,mb_strrpos(mb_substr($str,0,$size,'utf-8'),' ',utf-8),'utf-8'); } ?>