رفتن به مطلب

پست های پیشنهاد شده

باسلام خدمت شما عزیزان

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


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 هست و من از حالت افزونه فقط خارجش کردم و در خود قالب و فانکشن اون اوکی کردم.

فقط مشکل اینه که نمیخام در بالای پست یا پایین پست ها نمایش بدم و میخام در جایی که خودم تعیین میکنم تابع رو نمایش بدم؟!!!

ممنون میشم راهنمایی بفرمایید.

لینک به ارسال

کافیه این تیکه کد را حذف کنید

function ipslatestMain( $query ) {
   $position = "bottom";
   if($position === "bottom")
    $acton = "loop_end";
   elseif ($position === "top")
    $acton = "loop_start";
   add_action($acton,"ipslatest_main");
}

و تو اون قسمتی که میخواید نمایش بدید

این کد را قرار بدید مثلا تو هدر سایت هرجایی که میخواید نمایش پیدا کنه

<?php ipslatest_main(); ?>

یه نکته اینه که تو کد یه شرط هست که کد فقط تو صفحه خانه اجرا بشه میتونید اون شرط را حذف کنید

 

//شرط :‌
if ( is_home() && $query->is_main_query() ) {

 

لینک به ارسال
در 11 ساعت قبل، mehdi... گفته است :

کافیه این تیکه کد را حذف کنید


function ipslatestMain( $query ) {
   $position = "bottom";
   if($position === "bottom")
    $acton = "loop_end";
   elseif ($position === "top")
    $acton = "loop_start";
   add_action($acton,"ipslatest_main");
}

و تو اون قسمتی که میخواید نمایش بدید

این کد را قرار بدید مثلا تو هدر سایت هرجایی که میخواید نمایش پیدا کنه


<?php ipslatest_main(); ?>

یه نکته اینه که تو کد یه شرط هست که کد فقط تو صفحه خانه اجرا بشه میتونید اون شرط را حذف کنید

 


//شرط :‌
if ( is_home() && $query->is_main_query() ) {

 

ممنون دوست گلم

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...