سلام ، آیا این بازدید اول شماست ؟ یا
نمایش نتایج: از شماره 1 تا 1 , از مجموع 1

موضوع: سوالی پیرامون طراحی ماژول در جوملا 3

  1. #1

    تاریخ عضویت
    Dec 2014
    نوشته ها
    1
    تشکر
    0
    تشکر شده 0 بار در 0 ارسال

    سوالی پیرامون طراحی ماژول در جوملا 3

    با سلام به دوستان .

    من سوالی پیرامون برنامه نویسی و طراحی ماژول در جوملا سه داشتم .
    یک ماژول خیلی ساده ای بنده پیاده سازی کردم تحت عنوان نمایش مطالب ویژه .

    در فایل xml که وجود داره من اومدم و در قسمت config سه پارامتر تعیین کردم به صورت زیر ::

    کد:
    <config>
    		<fields name="params">
    			<fieldset name="basic">
                    <field name="limitnews" type="text" label="تعداد اخبار" description="" />
                    <field name="newscat" type="category" extension="com_content" label="مجموعه خبری" description="" />
                    <field name="ordernews" type="list" label="ترتیب نمایش" desciption="" >
                        <option value="ASC" >صعودی</option>
                        <option value="DESC" >نزولی</option>
                    </field>
    			</fieldset>
    		</fields>
    	</config>
    در فایل اصلی که به نام mod_news.php هستش اومدم و با استفاده از دستورات زیر فایل helper و فایل default.php را نیز فراخوانی کردم .

    کد:
    require_once dirname(__file__).'/helper.php';
    require JModuleHelper::getLayoutPath('mod_p30news', $params->get('layout', 'default'));
    در فایل helper هم برای اتصال به دیتابیس و انجام یک کوئری در دیتابیس از کدهای زیر استفاده کردم .

    کد:
    function newstemp ($category_id,$ordernews,$limitnews)
        {
            $db = JFactory::getDBO();
            $sql = "SELECT * FROM #__content WHERE state=1 AND catid='$category_id' ORDER BY id $ordernews LIMIT 0,$limitnews ";
            $db->setQuery($sql);
            $result = $db->loadAssocList();
            return $result;
        }
    و در آخر در صفحه مربوط به default.php با استفاده از دستورات زیر پارامتر های موجود در فایل xml فراخوانی کردم . و بعدش با استفاده از متغییر result و دستورات مربوط به foreach اون اخبار فراخوانی کردم

    کد:
    $limitnews      = $params->get('limitnews');
    $category_id    = $params->get('newscat');
    $ordernews      = $params->get('ordernews');
    
    $result = modP30newsHelper::newstemp ($category_id,$ordernews,$limitnews);
    
    foreach ($result as $item)
    {
        echo '<h3>'.$item['title'].'</h3><br />';
        echo mb_substr(strip_tags($item['introtext']),0,150);
        echo '<hr />';
    }
    خوب تا اینجا همه چی اوکی هستش و مشکلی وجود نداره . پ

    سوال من از اینجا شروع می شود که با استفاده از پارامتر مربوط به xml که در بالا ذکر کردم شما فقط قادر هستید که یک مجموعه رو انتخاب کنید .
    کد:
    <field name="newscat" type="category" extension="com_content" label="مجموعه خبری" description="" />
    حالا اگر من کد بالا رو تغییر بدم و به صورت زیر قرار بدم که امکان انتخاب همزمان چند مجموعه باشه : { خاصیت multiple="true" فعال کنم }

    کد:
    <field name="newscat" type="category" extension="com_content" multiple="true" label="مجموعه خبری" description="" />
    حالا در کوئری که من به دیتابیس می دم باید چطوری بنویسم این کوئری رو ؟

    کوئری که در حالت قبل من به دیتابیس می دادم به صورت زیر بود :

    کد:
    $sql = "SELECT * FROM #__content WHERE state=1 AND catid='$category_id' ORDER BY id $ordernews LIMIT 0,$limitnews ";
    تو دیتابیسم و اون جدول مربوطه من یک ستون دارم با عنوان " featured " که مربوط به مطالب ویژه هستش و باید بهش بگم که اگر برابر با 1 بود بهم اون مطالب ویژه نمایش بده . به صورت زیر :

    کد:
    $sql = "SELECT * FROM #__content WHERE state=1 AND featured=1 AND catid='$category_id' ORDER BY id $ordernews LIMIT 0,$limitnews ";
    اما خروجی برای بنده درست عمل نمیکنه . اینکه مشکل کجاست دقیق نمی دونم .


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

    [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید]

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  2. # ADS
    تبلیغات در جوملا فارسی
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

موضوعات مشابه

  1. 1 سوال درباره ی مسابقات پیامکی
    توسط ali alikhani در انجمن متفرقه
    پاسخ ها: 5
    آخرين نوشته: 11-02-2013, 07:06 AM
  2. 1 سوال درباره ی مسابقات پیامکی
    توسط ali alikhani در انجمن سوالهای عمومی جوملا 1.5 فارسی
    پاسخ ها: 3
    آخرين نوشته: 10-31-2013, 07:02 PM
  3. سوال درمورد تنظیمات ثبت نام پیش فرض
    توسط Sajad DP در انجمن سوالهای عمومی جوملا 1.5 فارسی
    پاسخ ها: 3
    آخرين نوشته: 04-27-2011, 10:37 AM
  4. یه سوال در مورد قالب پیشفرض 4.6.5
    توسط misam20066 در انجمن قالب های مامبو فارسی
    پاسخ ها: 6
    آخرين نوشته: 04-16-2009, 08:50 AM

علاقه مندی ها (Bookmarks)

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

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