آموزش نحوه استفاده از کد های php در ابزارک های وردپرس
بدون شک یکی از بخش های بسیار پر کاربرد در هر وبسایت و وبلاگ وردپرسی، ناحیه ابزارک ها و سایدبارهای آن است. ابزارک ها این امکان را در اختیار ما میگذارند که بر اساس نیاز خود و بازدیدکنندگانمان، اطلاعات، کنترلها، تبلیغات و به طور کلی هر آیتمی را که صلاح میدانیم به وبسایت وردپرسی خود اضافه کنیم. کاربرد ابزارکها انقدر زیاد است که حتی پیش تر به شما یا دادیم که چگونه میتوانید با ویرایشگر دیداری وردپرس یک ابزارک بسازید و آن را مورد استفاده قرار دهید.
در این میان یکی از ابزارکهای آشنا و بسیار پر کاربرد، ابزارک “متن” میباشد. اگر تا حالا سر و کارتان به این ابزارک افتاده باشد، میدانید که با چند خط کد نویسی کوتاه، میتوان با این ابزارک کارهای جالبی انجام داد. اما این وسط یک مشکل کوچک وجود دارد. مشکل از این قرار است که ابزارکهای وردپرس از شما کد PHP قبول نمیکنند. در واقع از شما انتظار میرود که اگر نیاز به کد پی اچ پی دارید، خودتان بنشینید و یک ابزارک کامل، از پایه برای خود تعریف کنید. انجام این کار پیچیدگی های خاص خود را داشته و شاید برای همه مقدور نباشد. اما امروز مسترکد روش بسیار ساده ای را به شما یاد میدهد که به وسیله ی آن میتوانید در ابزارکهایی شامل کد های PHP به وبسایت خود اضافه کنید.
این کار بسیار ساده است. برای این کار به یک افزونه ی کوچک به نام PHP Code Widget نیاز دارید. بعد از اینکه این پلاگین را بر روی وردپرس خود نصب کنید، خواهید دید که یک ابزارک جدید با عنوان PHP Code به ابزارک های در دسترس شما اضافه میشود. حالا تنها کاری که لازم است انجام دهید این است که کد دلخواه خود را در این ابزارک قرار دهید تا در وبسایت شما به نمایش در بیاید. همین!
و اما شاید بعضی از شما بپرسید که این کار چه کاربردی دارد؟ کاربردهای متنوعی برای این ابزارک میتوان در نظر گرفت اما دو مورد خیلی ساده که مسترکد به شما آموزش میدهیم، نمایش آخرین افراد عضو شده در وبسایت شما و یا نمایش آمار کامل سایت شما خواهد بود.
سلام
من ابزارکی ساختم و داخلش کد پی اچ پی گذاشتم و اونو توی یکی از صفحاتم قرار دادم.
حالا می خوام فایلی که سمت سرور قرار میگره رو بذارم رو هاستم برای محاسبه بعد از زدن کلید
فایل رو ساختم و فقط مشکل اینه که نمیدونم تو کدوم پوشه باید بذارم که وقتی این کلید رو کاربر زد سایت بتونه فایل دوم رو بخونه و جواب رو محاسبه کنه.
ممنون میشم کمک کنید.
سلام
بر اساس توضیحتون بنده برداشتم این بود که فرمی ساختید که اطلاعات درونش وارد میشه و بعد محاسبه ای روی اطلاعات وارد شده انجام میگیره. اگر همینطوره در اکشن فرمتون آدرس فایل مورد نظر رو صدا کنید.
بله درسته
من به این صورت فایل محاسبه رو صدا زدم
<form action="check.php" method="post">
ولی مشکلم اینه که فایل chek رو نمیدونم تو کدوم پوشه از هاست باید قرار بدم که کار کنه هرجا گذاشتم 404 داد.
ببینید شما اصلا مجبور نیستید مسیر نسبی وارد کنید. میتونید آدرس کامل فایلتون رو وارد کنید. مثلا :
http://domain.com/check.php
آدرس بالا وقتی فایل در public_html دامنه ی مورد نظر باشه کار میکنه. هر جای دیگه ای هم که آپلود کنید بر همون اساس میتونید مسیر لینک بالا رو عوض کنید. وقتی مسیر رو به طور کامل وارد کنید به 404 هم بر نمیخورید.
توی فایل chek این کد رو دارم اینو چکارش کنم؟
header("location:index.php?sum=$sum");
بجای ایندکی چطور آدرس صفحه ای که توش هستم رو بذارم.
ببخشید خیلی مزاحم شدم
تابع header هم میتونه آدرس کامل بگیره. میتونید این راهنما رو مطالعه کنید :
http://php.net/manual/en/function.header.php
آخه صفحات وردپرس توی هاست مشخص نیستند بخاطر همون نمیدونم آدرسشو چطور باید بدم
مثلا صفحه ای ساختم با نام sum و آدرسش در url بالا www.domain.com/sum/ هست
ولی وقتی این آدرسو میدم نمیشناسه
من متوجه منظورتون از این جمله نشدم "آخه صفحات وردپرس توی هاست مشخص نیستند"
ببینید شما وقتی دارید فایلی در هاست میزارید که وابستگی به وردپرس نداره، اصلا نیازی نیست به ساختار فایلهای وردپرس کاری داشته باشید. در این حالت آدرس فایل در هاست اهمیت داره.
اگر منظورتون اینه که صفحه ای با نام sum در وردپرس ساختید (که البته نمیدونم چه نیازی به این کار داشتید) که خوب در زمان ویرایش آدرسش مشخص و قابل مشاهده هست. ولی اگر منظورتون اینه که فایلی با نام sum حاوی محتویات php در هاست ساختید، اولا که این فایل باید دارای پسوند .php باشه یعنی sum.php و دوما فقط اگر در public_html دامنتون قرارش دادید میتونید به صورت مستقیم (همینطور که خودتون توی آدرس مثال زدید) صداش کنید و در غیر این صورت باید به صورت صحیح آدرس رو در همون فولدری که هست صدا کنید مثلا domain.com/folder/file.php و سوما پسوند .php رو توی آدرس فراموش کردید.
ببینید من صفحه ای در وردپرس ساختم و مطالبی داخل این صفحه قرار دادم
حالا در یک قسمت وسط صفحه نیاز به فرم محاسبه یک فرمول دارم
حالا افزونه php code widjet رو نصب کردم و کدم رو درون اون قراردادم
حالا فرمم در صفحه وردپرسم لود میشه
بعد از این میخوام وقتی دکمه محاسبه زده شد در کادر زیر این فرم که درست کردم جواب نمایش داده بشه
فایل دوم را ساختم با نام check و محاسبه رو مطمئنم که درست انجام میده. فقط در اینجا با قرار دادن این فایل در هاست مشکل دارم و در ضمن داخل این فایل chech.php باید با کد heder جواب رو به صفحه وردپرسم بفرستم که مشکلم اینجاست
با عرض شرمندگی بنده همه ی اینها رو در کامنت های قبلی خدمتتون توضیح دادم. شاید توضیح بنده مناسب نبوده ولی با عرض پوزش شکل دیگه ای جهت توضیح به ذهنم نمیرسه.
ممنون شرمنده اذیتتون کردم
خواهش میکنم این چه حرفیه. من نتونستم کمکتون کنم آخرش.
سلام دوست گرامی.ممنون از مطلب آموزشی.
یک برنامه مشاهده کارنامه مدرسه نوشتم با php و دیتابیس جدا از وردپرس.
حالا چطوری میتونم کدهای نوشته شده را در قالب برگه قرار بدم که مثل یک برگه سایت نمایش داده بشه؟
کدها را در قالب برگه کپی کردم و قالب برگه به نام karnameh ساختم و اسمش را karnameh.php گذاشتم.
اما با تعیین برگه با این قالب ، وقتی فیلدها را پر میکنم و ارسال میزنم ، وردپرس خطای 404 میده.
ممنون میشم آموزش بدید.
سلام
متاسفانه به این علت که باید کدتون و نحوه ی پیاده سازیتون کاملا بررسی بشه تا بشه نظر داد، چیز خاصی نمیتونم بگم بجز اینکه ممکنه آدرس action فرمتون اشتباه باشه.
ولی من فکر میکنم اگر این اسکریپتتون رو با وردپرستون قاطی نمیکردید بهتر بود … یعنی به صورت مجزا بهش لینک میدادید و ازش استفاده میکردید. خصوصا که فرمودید دیتابیسش هم جدا از وردپرسه.
ممنون از پاسخ دوست عزیز
مسئله من اینه که میخوام ظاهر و افزونه های وردپرس رو کنار این اسکریپت داشته باشم.
خیلی به بحث ایجاد cms اختصاصی و حفظ امنیت وارد نیستم.
اگر منبع یا راهنمایی دارید ممنون میشم.
پیشاپیش از لطفتون تشکر میکنم.
شما اگر میخواید ظاهر سایت اصلیتون رو در این اسکریپت داشته باشید به سادگی میتونید استایل های سایتتون رو روی اسکریپت جداگانتون پیاده سازی کنید.
توی مبحث امنیت، چه شما یک صفحه ی جداگانه داشته باشید چه اون صفحه ی php رو به وردپرس اضافه کنید، در صورت وجود باگ امنیتی، هردو به یک اندازه میتونه امنیت رو زیر سوال ببره.
و البته برای ایجاد یک فرم جستجو نیازی نیست فراتر برید و به یک cms کامل فکر کنید.
یک کاری هم که میتونید بکنید اینه که این فرمتون رو در یک جای دیگه بزارید و از طریق iframe توی سایتتون نمایشش بدید.
action ندادم و اسکریپت بعد از فرم در همون صفحه اجرا میشه.در بین اسکریپت کد html هم دارم.چون جدول هست.
با زهم ممنونم