واضح آرشیو وب فارسی:سایت ریسک: t=17284">مقاله:طريقه ساخت تم براي پي اچ پي نوك (قسمت اول) mahdi000 05 شهريور 1383, 10:27اينم براي شما.... كلي اين در و اون در زديم كسي به دادمون نرسيد....خلاصه اجبار مادر همه اختراعاته!(كاملا بي ربط) در هر صورت اميد وارم به دردتون بخوره...امروز همه دارن آماده مي شن بيان تهران ...ما داريم آماده ميشيم بريم مشهد.!!!(جاي مارو هم خالي كنيدخيلي دوست داشتم منم بيام :cry: ) 8O در هر حال كم و كاستياشو به بزرگي خودتون ببخشيد. ----------------------------------------------------------------------------------------------------------- طریقه ساختن تم برای پی اچ پی (قسمت اول) ساختار یک تم * همانطور که میدونید داشتن تمی منحصر به فرد برای صاحبان سایتها بسیار مهم است.چرا که داشتن تم شخصی، نشان از خرفه ای بودن سازنده و در نتیجه بالا رفتن اعتبار شماست.در ضمن سایت شما دیگه مثل بقیه نیست!!! ابتدا به تشریح وظایف فایلهای لازم برای تغییر تم می پردازیم: ( بر پایه این فایلها ما تم می سازیم) · theme.php: کنترل تابع متغیر برای رنگ های پشت زمینه. · tables.php : کنترل تابع بستن و باز کردن جداول و فهرست ها {opentable() and closetable().} · header.html : کنترل عنوان صفحه سایت شما · footer.html : کنترل قسمت پایینی سایت شما · blocks.html : کنترل بلوک ها · center_right.html : کنترل مربوط به طرح بندی صفحه · center_left.html : کنترل مربوط به طرح بندی صفحه · story_home.html : کنترل مربوط به طرح بندی صفحه · story_page.html : کنترل مربوط به طرح بندی صفحه ساختار تم NukeNews این فایلها محتوی کارکرد های معین در theme.php هستند.سپس ما یه صفحه style داریم که style.css (style/style.css) نامیده می شود. که در فایل header.html در پوشه theme قرار دارد. برای انجمن ها همواره باید صفحه style ما style.css نامگذاری شود و همیشه در پوشه style در پوشه theme قرار گیرد. عکس ها نیز پوشه ای به نام images در modules/PHP-Nuke_HOWTO/images قرار می گیرند. v اکنون ما سه پوشه داریم: · themes/NukeNews · themes/NukeNews/style/ · themes/NukeNews/modules/PHP-Nuke_HOWTO/images/ همواره به خاطر داشته باشید که موقعیت ها و جایگاها بسیار مهم هستند. فایل theme.php قلب تمام مدیریت ترسیمی PHP-Nuke میباشد. در واقع همه اجزای اصلی در این پوشه است(header, footer, central parts, block...). شیوه قرار دادن کدهای HTML در فایل های جداگانه،که شامل theme.php می شوند،در اینجا کاربردی ندارد.(به عکس 2 توجه کنید.) عکس 2 ( ساخت تم بدون استفاده از HTML templates ) themeheader کنترل کننده عنوان بالایی سایت است،آن ترکیبی از table های مختلفی که شکل دهنده عنوان سایت شماست.و گاهی اوقات نیز تعیین کننده بعضی body tag هایی که مشتمل بر صفحه style نمی باشند و فقط متغیرهایی هستند که در فایلهای HTML جایگذاری می شوند. · مثال: · متغیر $theuser درون themeheader تعریف شده است و نمایانگر header.html در یک table می باشد. کد در theme.php (معین کننده متغیر$theuser ) if ($username == "Anonymous") { $theuser = "&nbsp;&nbsp; <a href="gate.html ?name=Your_Account &op=new_user">Create an account"; } else { $theuser = "&nbsp;&nbsp;Welcome $username!"; } کد در header.html (نمایش دهنده متغیر$theuse) if ($banners == 1) { include("banners.php"); } این خطوط بازده بنر رو عهده دار هستند.شما با تغییر جاها در PHP میتونید بنر خودتونو داشته باشید! تابع themefooter عهده دار قسمت پایینی سایت شماست. آن شامل عناصر جالبیه که در زیر براتون به تفکیک توضیح میدم. اول از همه اینکه،وقتی بلوکی در صفحه می بینیم که متغیر $index برابر 1 باشد. در این جا ما می خواهیم که یک بلوک در سمت راست صفحه قرار دهیم،اما اگر $index==0 باشد در این صورت بلوکی در سمت راست ظاهر نخواهد شد. سپس بیانگر پیغام در قسمت پایینی سایت است ( که از config.php گرفته شده است). و همه متغیرهارو در فایلی بنام footer.html قرار می دهد. وظیفه themeindex() مدیریت اخبار در صفحه اصلی است.همچنین در بر دارنده فایل story_home.htm نیز هست. وظیفه themearticle() نیز مدیریت صفحه اخبار داخلی است. که بوسیله ماژول news معین می گردد. وظیفه themesidebox() نیز مدیریت و نظارت بر طرح بندی جای ویژه ای(بلوک جدید) که ما ایجاد می کنیم یا از قبل ساخته شده هستند.همچنین اون شامل فایلی بنام blocks.htm می باشد که تعیین کننده style و طرح بندی ماست. در اینجا ما از یکی از متغیرهای theme.php چشم پوشی می کنیم که اینها همان متغیرهای مربوط به متن (text) می باشند،بعضی از آنها در css قرار داده شده اند، اما بقیشون در ابتدای فایل theme.php معین شده اند. حالا اجازه بدید یه متغیر از خود NukeNews theme رو با هم ببینیم: $bgcolor1 = "# efefef"; $bgcolor2 = "# cfcfbb"; $bgcolor3 = "# efefef"; $bgcolor4 = "# cfcfbb"; $textcolor1 = "# 000000"; $textcolor2 = "# 000000"; همچنانکه مشاهده می کنید قیافه مقادیر این متغیرها بصورت دهگان است.(a b c d…) $bgcolor2 رنگ سایت شمارا نشان میدهد. pentable() بطور کلی برای تعیین رنگ لبه های جداول است. $bgcolor1 هم برای رنگ پشت زمینه جداول است. دو متغیر دیگر background نیز طبق ضابطه شان بکار میروند. $textcolor1 و $textcolor2 نیز وظیفه کنترل نگ متن را به عهده دارند. حالا وقتشه که محتویات فایل tables.php رو آزمایش کنیم.این فایل از 4 عملگر درست شده است: (opentable(); closetable(); opentable2(); closetable2();) که در بر دارنده تگهای HTML میباشند که عهذه دار باز و بسته کردن جداول در یک مسیر تعریف شده هستند. این خیلی برای ساختن یک ماژول راحته،شما مجبور نیستید که هر دفعه از نو برای ساختن جدول HTML بنویسید ،شما میخاهید یک جدول داشته باشید،فقط کافیه از ترکیب زیر پیروی کنید: opentable(); echo "Content of the table"; closetable(); با این روش شمادر مدت زمان کوتاه و مفید یک جدول(table) ساختید!!! اما این تابع چطوری ساخته شده؟ امتحان می کنیم:اول opentable() و سپس closetable(). توجه داشته باشید: اینها توابع php هستند،بنابر این شما باید ترکیب HTML رو در اونها لحاظ کنید.یعنی اضافه کردن قبل از هر " . به عبارت دیگر align="left" رو باید بصورت align="left" بنویسید. function OpenTable() { global $bgcolor1, $bgcolor2; echo "<table width="100% " border="0 "cellspacing="1 " cellpadding="0 "bgcolor="$bgcolor2 " >< tr >< td > "; echo "< table width="100% " border="0 "cellspacing="1 " cellpadding="8 "bgcolor="$bgcolor1 " >< tr >< td > "; } ترکیب و هماهنگی خیلی راحته،مگه نه؟ · تابع باز شده · لازمه که متغیر ها $bgcolor1, $bgcolor2 نامگذاری شوند. · ما یه جدولو 100% عریض باز می کنیم و براش یه رنگ پشت زمینه تعیین می کنیم. · خط و ستون باز می کنیم. · یک جدول جدید 100% عریض رو برای لبه ها درون جدولمون وارد می کنیم. · مشخصات طول و عرض رو معیین می کنیم. · یه خط هم برای ستون اینجا سره ستون صبر کنید.می خواهیم در اینجا مقدار و حجم جدولمونو وارد کنیم.(درحقیقت opentable از پیش شروع شده تا زمانی که این جدول بسته میشه!) function CloseTable() { echo "</td ></tr ></table ></td ></tr ></table > "; } در واقع... · تابع باز شده · شما ستون رو می بندید،شما خط رو هم می بندید. · جدول درونی رو هم می بندید. · شما ستون رو می بندید،شما خط رو هم میبندید. · شما جدول بیرونی رو هم میبندید. برای ساختن توابع HTML با PHP خیلی راحت بود....اینطور نیست؟ مهدی000؟ ادامه دارد... عكسهارو از فايل پيوست ببينيد. nasser110 05 شهريور 1383, 11:33سلام در مورد فضا هم اگه خواستيد من پايه ام با يك ساب دامين ممنون mahdi000 05 شهريور 1383, 11:40فضاي چي؟ nasser110 05 شهريور 1383, 11:54سلام آقا شرمنده اشتباه شد ، من براي يه تاپيك ديگه داشتم مي فرستادم ... آقا راستي خيلي زحمت كشيدي ممنون ايشالا 1000 در اين دنيا و 100000000000 در آخرت ببيني :wink: باي izone 05 شهريور 1383, 11:56ممنون از شما . اميدوارم ادامه داشته باشه! خسته نباشيد. mahdi000 19 شهريور 1383, 07:39به علت عدم استقبال...كات mahdi000 19 شهريور 1383, 07:43به علت عدم استقبال...كات karevan 06 مهر 1383, 10:11سلام قرار نيست اين آموزش ادامه پيدا كنه؟ a 3m00n 06 مهر 1383, 14:10با درود مهدي گرامي دوست نازنین بسیار سپاسگزار از این بخشی که توضیح دادید اگر ممکن میباشد قسمتهای بعدی را نیز توضیح دهید دوست نازنین اگر حتی یک نفر نیز از این مطلب شما استفاده کند شما به حدف خودتان رسیده اید پس زیاد ناراحت استقبال نکردن دیگر دوستان نباشید پیروز و سر فراز باشید Hosein.NET 06 مهر 1383, 17:56آقا a 3m00n درست ميگن؟ ادامه بده
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 545]