تجارت الکترونیکطراحی وب

افزودن تب آخرین فعالیت ها به شیرترانیکس

sharetronix

سلام تصمیم داریم هر ازگاهی یک سری آموزش و معرفی امکانات ریز شیرترانیکس رو خدمتتون ارائه بدیم 🙂 البته برای بعضی از مطالب نمی توان نام افزونه گذاشت.

اما بعد..

گاهی اوقات داخل شبکه ی شما پست جدید ارسال نمیشه و کاربران درگیر بحث در پست یا پستهایی هستند و به همین دلیل کاربرانی ک از پست های ذکر شما بی خبرند احساس راکد بودن شبکه بهشون دست میده.

حالا ما می خواهیم یک تب ب شبکه اضافه کنیم تا وقتی ب پستی دیدگاه ارسال می شود در تب ذکر شده پست بالا بیاید!

ب این ترتیب  حس راکد بودن تا حد زیادی از بین می رود.

مراحل کار:

ب پوشه systemcontrollers برید و فایل dashboard.php با ادیتور مناسب (مثلا notepad++) باز کنید.

عبارت

case 'everybody

پیدا و بعد از اولین break; دستور زیر را قرار دهید:

case 'last-a':

if($filter == 'all') {

$q1    = 'SELECT COUNT(p.id) FROM posts p WHERE p.user_id<>0 AND p.api_id<>2 AND p.api_id<>6 '.$not_in_groups;

$q2    = 'SELECT p.*, "public" AS `type` FROM posts p WHERE p.user_id<>0 AND p.api_id<>2 AND p.api_id<>6 '.$not_in_groups.' ORDER BY p.date_lastcomment DESC ';

}

else {

$q1    = 'SELECT COUNT(p.id) FROM posts p, posts_attachments a WHERE p.id=a.post_id AND p.user_id<>0 AND p.api_id<>2 '.$not_in_groups.' AND a.type="'.$at_tmp[$filter].'" ';

$q2    = 'SELECT p.*, "public" AS `type` FROM posts p, posts_attachments a WHERE p.id=a.post_id AND p.user_id<>0 AND p.api_id<>2 '.$not_in_groups.' AND a.type="'.$at_tmp[$filter].'" ORDER BY p.date_lastcomment DESC ';

}

break;

سپس

$tabs = array('all', '@me',

را یافته و به

$tabs = array('all', '@me', 'last-a',

تغییر دهید.

حال ب پوشه قالب و سپس پوشه html رفته و فایل dashboard.php را باز کنید.

عبارت

                <a href="<?= $C->SITE_URL ?>dashboard/tab:@me"><b></b><strong><?= $this->lang('dbrd_leftmenu_@me', array('#USERNAME#'=>$this->user->info->username)) ?></strong><span><small id="dbrd_tab_mention" style="<?= $D->tabs_state['@me']==0||$D->tab=='@me'?'display:none;':'' ?>"><?= $D->tabs_state['@me'] ?></small></span></a>

را یافته و بعد از آن عبارت زیر را قرار دهید.

                 <a href="<?= $C->SITE_URL ?>dashboard/tab:last-a"><b></b><strong>آخرین فعالیت ها</strong></a>

و لذت ببرید.

* این آموزش بر روی شبکه اجتماعی رفسنگ تست شده است.

گفتگو ها
    مجید

    دستت درد نکنه سجاد جان 🙂

    ﻣﻤﻨﻮﻥ ﺍﺯ ﺁﻗﺎ ﺳﺠﺎﺩ …
    ﻣﻨﺘﻈﺮ ﺁﻣﻮﺯﺷﻬﺎﯼ ﺑﯿﺸﺘﺮ ﻫﺴﺘﯿﻢ…

    sلام ممنون از مطلب خوبت دوست عزیز.
    سوالی دارم اینکه امکانش نیست وقتی کسی روی پستهای قدیمی نظر میگذاره یا لایک میزنه تو صفحه لایو هم نمایش داده بشه مثل سایت فرندفید . یعنی نوشتهایی که لایک میخورن یا افراد نظر میذارن بالا بیاد .

      سجاد!

      سلام
      کافیه کنترلر صفحه لایو رو ویرایش کنید تا ب جای مرتب سازی بر حسب زمان ارسال بر حسب date_lastcomment مرتب کنه 🙂
      برای لایک هم ب همین صورت هست ولی بسته ب نوع افزونه لایک ک دارید تفاوت هایی هم داره

    دوست عزیزم ممنون از اینکه جواب دادین . کد خیلی خوبیه اما فقط وقتی رو فیدی نظری نوشته میشه تو آخرین فعالیت ها بالا میاد .
    من میخوام تو صفحه لایو بالا بیاد وقتی کسی رو فیدی لایک میزنه یا نظر میذاره . اگه امکان داره آموزشش رو بذارین .

      عزیز خدمتتون عرض کردم که
      برید در پوشه کنترلر و بعد فایل live.php رو باز کنید
      خط مربوط ب خوندن مطالب رو پیدا کنید (اولش هست if($filter == ‘all’) { )
      اونجا دومورد p.id هست ک باید ب جاش بذارید:
      p.date_lastcomment
      تمام 🙂

    با سلام ممنون آقا سجاد راستش کد رو جایگزین کردم اما تغییری ایجاد نشد 🙁
    در ضمن این کدی که گفتین فقط واسه زمالنی هست که کسی نظر بده ؟ اگه فردی پست قدیمی رو لایک بزنه پست بالا نمیاد؟

      این کد برای این هست ک در صفحه نمایش زنده آخرین فعالیت ک حالا یا پست جدید هست و یا دیدگاه جدید رو بیاره
      برای لایک چون با سیستمش کار نکردم نمیتونم نظری بدم.
      از همین کد در صفحه نمایش زنده شبکه رفسنگ http://shahr.rafsang.com/live استفاده کردم و جواب داده.
      موفق باشید.

    باسلام فقط تبش مشکل داره کدش میشه کامل بگید

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

    عالی بود واقعا متشکرم از زحمات شما

    قالب ما هم پیش فرضه ولی گزینه اش اینجوری است
    http://ya2020.persiangig.com/ssss12.jpg

    آقا درست شد فقط یه مشکل داره که متن ها رو بولد میکنه همین

    <a href="SITE_URL ?>dashboard/tab:lats-a” class=”item atmetab==’lats-a’?’ onitem’:” ?>”>آخرین فعالیت ها

    منم همین مشکل بولد بودن که آقا صادق عکسش رو گذاشتن دارم . کد رو تغییر دادم اما تغییری نکرد .

    myriam

    با سلام
    من پوسته simplicity رو ویرایش ( فقط گرافیکی و به کد ها دست نزدم) بعد برای این که می خواستم صفحه اصلی رو از اسکین twiterish استفاده کنم فایل home.php رو جایگزین کردم در فولدر اسکین simplicity حال همه گرافیک های صفحه اصلی کار می کنه ولی مثلا آخرین آنلاین ها یا آخرین فعالیت ها رو نشون نمی ده ! چه باید کرد و چه فایل هایی رو جایگزین یا ادغام کرد که از این دو به درستی استفاده بشود

    با تشکر

    myriam

    فقط ایراد کار باید اینجا باشه که من از شیرتارنیکس فارسی استفاده نکردم من نسخه اصلی رو برداشتم و تغییر دادم اسکین رو که ممکنه این هم تاثیر گذار بوده باشه !

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

    سلام

    فکر کنم هایلایت کردن رو بسته باشید و نمیشه کد هارو کپی و جایگزین کرد.

      حسین جاهدی

      سلام
      بله متاسفانه بعضی سایت ها شورش رو در آوردن به همین علت این محدودیت رو ایجاد کردم
      شما هم اگر تابپ کنی بهتر دست تون رون میشه
      شرمنده دوست من ببخشید دیگه 😀

      حسین جاهدی

      سلام

      برای راحتی شما دوستان این امکان رو فراهم کردیم تا بتونید کد ها رو کپی کنید 🙂

      موفق باشید.

    دست ما روونه داداش اما …..

    ممنون که درست کردید توی ایران چیزی به اسم کپی رایت وجود نداره 😀

    نصب میکنم کار کنه دمو میدم خدمتتون

    ario

    سلام خسته نباشید

    این افزونه رو نصب کردم ولی صفحه سفید میاد برام در آدرس dashboard/tab:last-a

    فکر میکنید مشکل از کجاست؟!

    این بخش تب های منه

    $tabs = array(‘all’, ‘@me’, ‘private’, ‘commented’, ‘likes’, ‘bookmarks’, ‘everybody’, ‘group’, ‘reshares’, ‘system’ , ‘groups’);

      سلام

      برای صفحه ی سفید یعنی اینکه یک جای کار رو اشتباه انجام دادید.

      دیباگ کنید و به سطری ک براتون خطاش میاد برید و خطای انسانی تون رو رفع کنید (:

        ario

        این ارور رو میده

        MySQL Query: SELECT COUNT(p.id) FROM posts p WHERE p.user_id0 AND p.api_id2 AND p.api_id6

        MySQL Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘>0 AND p.api_id2 AND p.api_id6’ at line 1

          سجـاد!

          دستور رو بد کپی کردید یا دستکاری کردید.

    سلام ، مرسی از سایت و افزونه های خوبتون 🙂

    من اینو نصب میکنم ولی تب “Last-a” سفید میشه .

    مشکل از چیه؟