عمارگراف

ارسال مطلب به وردپرس از فرم php مستقل

9 پست در این موضوع قرار دارد

سلام

پیشوند "خیلی مهم" رو انتخاب کردم چون وقتم کمه.منون میشم دوستان راهنمایی کنن.

اول مسائل رو می نویسم طبق معمول :

1-میخوام یه صفحه ایجاد کنم با این آدرس www.mysite.com/sendfile که کاربرا بتونن بیان داخلش و یه فایل آپلود کنن و یه سری توضیحات بنویسن.

2-نمیخوام صفحه ادمین رو ببینن.یعنی کلا میخوام سایت به دور از محیط اصلی وردپرس باشه.واسه همین از صفحه ارسال مطلب وردپرس استفاده نمیکنم.

3-میخوام چندتا متا (meta) مثل نام فایل، تاریخ گرفتن عکس، موضوع(لیست دسته هایی که از قبل ساختم) و ... بهش اضافه کنم.

حالا مشکلات :

1-امکانش هست که یه فرم طراحی کنم با چندتا input و بعدش محتواش رو به دیتابیس وردپرس بفرستم و بعنوان پست در نظر بگیره؟فرم مستقل باشه و توش تگ وردپرس نباشه.یا اینکه تگ ها داخل input باشن و ویرایشگر وردپرس نباشه.

2-راهی هست که بدونِ افزونه بشه ویرایشگر متن وردپرس رو صحیح و سالم توی یه برگه فراخوانی کرد و امکان ارسال و انتشار هم داشته باشه؟

3-ساده ترین راه برای اضافه کردم metabox چیه؟ - آموزش همیار وردپرس رو دیدم.پیچیده و طولانی بود و من وقت کافی ندارم برای اون همه کار.

ممنون

یا علی

0

به اشتراک گذاری این پست


لینک به پست

سلام.

بحث شبیه سازی درج پست به وردپرس از طریق فرم جدا قابل اجراست.. فقط چیزی که هست اینه که با مدیریتشون از داخل پنل اصلی وردپرس ممکنه به مشکل بخورید.

متاباکس هم بهترین آموزش به نظر من همون آموزش همیار وردپرس هست. راه ساده تری فکر نمی کنم داشته باشه.

4

به اشتراک گذاری این پست


لینک به پست

ممنون از دوستمون که جواب دادن

خوشحال میشم نظر دوستان رو هم بدونم

سلام.

بحث شبیه سازی درج پست به وردپرس از طریق فرم جدا قابل اجراست.. فقط چیزی که هست اینه که با مدیریتشون از داخل پنل اصلی وردپرس ممکنه به مشکل بخورید.

متاباکس هم بهترین آموزش به نظر من همون آموزش همیار وردپرس هست. راه ساده تری فکر نمی کنم داشته باشه.

میشه بیشتر توضیح بدین در مورد ارسال مطلب از فرم مستقل؟مثلا یه مثال بزنید.

حالا برای مدیریتش یه کاری می کنم.

خب برای متاباکس که پیچیده میشه نمیشه جاش از یه چیز دیگه استفاده کرد؟

مثلا ببینید ما یه متن اصلی داریم.یه چکیده داریم.از این چیزا دیگه نداریم که من عنوانشون رو تغییر بدم و بعنوان مثلا "تاریخ گرفتن عکس" استفاده کنم؟

0

به اشتراک گذاری این پست


لینک به پست

برای استفاده از توابع وردپرس

wp_insert_post برای ثبت پست

افزودن زمینه add_post_meta

add_meta_box برای ایجاد متاباکس

در انجمن توابع را جستجو کنید

2

به اشتراک گذاری این پست


لینک به پست

سلام . شما می تونید توی اسکریپت خودتون مستقلا به پایگاه داده وصل بشید و مطلبتون رو درج کنید. و وردپرس اون رو لود می کنه. من قبلا نرم افزاری با c# نوشتم که چنین کاری می کرد منتها کاربر از توی سیستم خودش نمی تونست به پایگاه داده وصل بشه و به طور مستقیم تغییری ایجاد کنه (چون مدیران هاست دسترسی مستقیم رو به دلایل امنیتی بسته بودن) .

اما در لوکال هاست به درستی کار می داد ، ولی من به خاطر اون ضعف پروژه رو دیگه رها کردم!

برای فراخوانی اون فرم ویرایش مطلب هم می تونید فایل های جاوا رو که مرتبط با این کار هستن از پوشه ی وردپرس فراخوانی کنید و خروجی رو دستی در پایگاه توسط کدهای خودتون ذخیره کنید. (برای این کار طبیعتا لازمه به دستورات پلاگین جی کوئری tinymce اشنا باشید).

شاید این لینک هم به دردتون بخوره.

لیستی کامل از اسکریپت های اینکلود شده در وردپرس

tinymce

نحوه کار هم به این صورت هست که ابتدا مطلب رو بدون داشتن ای دی درج می کنید بعد بایک فراخوانی دیگه مطلب رو از دیتابیس می گیرید و از اون id مطلب رو گیر میارید. ( من این کار رو کرده بودم)

بعدش توی تیبل های دیگه مثلا برای تعیین دسته بندی تاکسونومی اضافه می کنید و غیره...

موفق باشید.

ویرایش شده در توسط parsigroup
2

به اشتراک گذاری این پست


لینک به پست
در در 3/11/2014 at 16:09، Parsa گفته است :

برای استفاده از توابع وردپرس

wp_insert_post برای ثبت پست

افزودن زمینه add_post_meta

add_meta_box برای ایجاد متاباکس

در انجمن توابع را جستجو کنید

سلام استاد
میشه بیشتر راهنمایی کنید من مبتدی هستم.
ببینید من میخام یه فرم برای آشپز ها ایجاد کنم و اونا اطلاعات شغلی خودشون رو وارد کنند. در ادامه من میخام یه پست تایپ ایجاد کنم با مشخصاتی که میخام. و اطلاعات این فرم در این پست تایپ جدید ذخیره بشه و من اونو تایید کنم و بعد به صورت یک پست در سایت نمایش داده بشه. 
نمیخام از افزونه استفاده کنم. اگه لطف کنید روال کار رو بگید ممنون میشم. چون نمیدونم چطوری این امکان رو باید فراهم کنم که اطلاعات فرم در این پست تایپ و فیلد هاش ذخیره بشه با کد نویسی؟

0

به اشتراک گذاری این پست


لینک به پست

سلام

برای جنریت کردن پست تایپ از اینجا کمک بگیرید:
http://wp-parsi.com/generator/

 

 

0

به اشتراک گذاری این پست


لینک به پست

خیلی ممنونم از راهنمایی تون 
بسیار کاربردی بود استاد گرامی
ولی این برای نمایش اطلاعات پست تایپ هست. میشه بگید که قبل از اون چطور میتونم اطلاعات یک فرم رو که توسط یک کاربر ثبت شده چطوری در این پست تایپ بدون اینکه کاربر رو بهش نقش مشارکت کننده بدم ثبت کنم؟

که بعد با استفاده از این کدها نمایش داده بشه؟
و اینکه این کدها رو دقیقا کجا در ورد پرس باید بنویسم ؟
من مبتدی هستم
با تشکر

0

به اشتراک گذاری این پست


لینک به پست
در 4 ساعت قبل، hodabanoo گفته است :

خیلی ممنونم از راهنمایی تون 
بسیار کاربردی بود استاد گرامی
ولی این برای نمایش اطلاعات پست تایپ هست. میشه بگید که قبل از اون چطور میتونم اطلاعات یک فرم رو که توسط یک کاربر ثبت شده چطوری در این پست تایپ بدون اینکه کاربر رو بهش نقش مشارکت کننده بدم ثبت کنم؟

که بعد با استفاده از این کدها نمایش داده بشه؟
و اینکه این کدها رو دقیقا کجا در ورد پرس باید بنویسم ؟
من مبتدی هستم
با تشکر

سلام به عنوان مثال :

if($_POST['post_submit']=='Submit'){
  $post = array(
      'post_type' => 'custom_post_type',
      'post_title' => $_POST['post_title'],
      'post_content' => $_POST['post_desc'],
      'post_status' => 'draft'
  );
  $post_id = wp_insert_post($post);
 }



<form id="song-entry" name="post_entry" method="post">
<p>
    <label>Title</label><br />
    <input type="text" id="post_title" name="post_title" />
</p>
<p>
    <label>Description</label><br />
    <input type="text" id="post_desc" name="post_desc" />
</p>

<p>
    <input type="submit" name="post_submit" value="Submit" />
</p>
</form>

که به جای custom_post_type اسم پست تایپ سفارشی رو قرار بدید و معمولا post_status در حالت draft ذخیره می کنن تا مدیر بررسی کند بعد ان را بروز رسانی و منتشر کند .

برای اطلاعات دقیق تر می تونید این لینک رو مطالعه بفرمایید .

https://stackoverflow.com/questions/42138786/how-can-i-save-a-custom-post-type-with-metaboxes-from-front-end

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط Reka
       

        برای نوشتن یک متن در فایل از تابع fwrite() در زبان PHP استفاده میشود.

      این تابع دو مقدار ورودی دریافت میکند، مقدار ورودی اول یک شی از نوع File handler (هندلر) بوده و مقدار دوم رشته ای (String) که میخواهیم درون فایل نوشته شود را مشخص میکند.
       
      $txt = "This is a test text!"; fwrite($file, $txt); نوشتن درون فایل با تابع fwrite

      میتوانیم تابع fwrite() را روی یک فایل باز شده چندین بار صدا بزنیم و در ادامه اطلاعات نوشته شده قبلی، اطلاعات دیگری بنویسیم. برای مثال قطعه کد زیر یک متن را در دو خط پشت سر هم درون فایل مینویسد.
      $txt = "This is a test text!"; fwrite($file, txt); fwrite($file, "\n"); fwrite($file, $txt); $txt = "This is a test text!"; fwrite($file, txt); fwrite($file, "\n"); fwrite($file, $txt); در پایان کار با فایل، می بایست فایل باز شده را ببندیم و مشخص کنیم که دیگر با این فایل کاری نداریم. در صورتی که عملیات بستن فایل انجام نشود، تغییرات انجام شده روی فایل اعمال نخواهد شد.

      برای بستن فایل باز شده از تابع fclose() استفاده میکنیم که به عنوان تنها ورودی، متغیر مربوط به File Handler را ورودی میگیرد.
      fclose($file); اکنون فایل options.ini ما محتوایی مشابه زیر خواهد داشت.
      This is a test text! This is a test text!  
    • توسط Reka
      معرفی توابع مهم و کاربردی زیر مجموعه تابع ( ) date :

      در لیست زیر برخی از توابع مهم و کاربردی مرتبط با تابع date را معرفی کرده ایم . این توابع امکانات مهم و سودمندی برای کار با زمان در اختیار ما قرار می دهند.

      1 - checkdate ( ) : این تابع ، تاریخ داده شده به آن را طبق تقویم میلادی بررسی کرده و صحت آن را اعلام می کند .

      2 - date_default_timezone_get ( ) : این تابع زمان محلی ( timezone ) سرور را نمایش می دهد .

      3 - date_default_timezone_set ( ) : این تابع زمان محلی ( timezone ) سرور را بر طبق مقدار داده شده ، تنظیم می کند .

      4 - getdate ( ) : این تابع زمان و تاریخ دقیق جاری سرور را در یک آرایه به کاربر نمایش می دهد .

      پی اچ پی در مورد تبدیل یک رشته به یک تاریخ، کاملا هوشمندانه عمل می کند، بنابراین شما می توانید مقادیر مختلفی مانند زیر را نیز به تابع strtotime بدهید:  
      <?php $d=strtotime("tomorrow"); echo date("Y-m-d h:i:sa", $d) . "<br>"; $d=strtotime("next Saturday"); echo date("Y-m-d h:i:sa", $d) . "<br>"; $d=strtotime("+3 Months"); echo date("Y-m-d h:i:sa", $d) . "<br>"; ?> خروجی:
      2018-07-24 12:00:00am 2018-07-28 12:00:00am 2018-10-23 06:25:33am  
       
    • توسط noorian
      سلام دوستان
      من درحال طراحی یک افزونه هستم ، و افزونه با فایل استایل با پسوند css سازگار نیست (style.css) پس مجبور شدم فایل استایل رو با پسوند php ایجاد کرده و در فایل اصلی افزونه فراخوانی کنم (include style.php)
       
      اما وقتی افزونه رو نصب میکنم ارور زیر رو میده :
      این افزونه 2405 حرف از خروجی غیرمنتظره در طول فعال‌سازی تولید کرد. اگر پیام اخطار “headers already sent” ، مشکلات مربوط به خوراک‌های پیوند یا مسائل دیگر را دریافت کردید، این افزونه را غیرفعال یا حذف کنید.
      چطوری این مشکل رو رفع کنم؟

    • توسط abdananbimeh
      آن کیست کز روی کرم مرا یاری کند
      باسلام
      دوستان عزیزان برادران مهندسین گرامی
      من نمی تونم این وردپرس رو هاست گیگفا نصب کنم حالم رو گرفته
      یه کسی من رو کمک کنه
      یه دامنه خودم دارم هر کسی لطف کرد  تونست کمک کنه ایمیل بفرست رمز و یوزر رو بهش بدم خودش زحمتش رو بکشه البته یه دامنه هم خودم دارم
       
    • توسط iritteam
      سلام دوستان
      وقت بخیر
       
      یک قالب از یک شرکت خارجی خریدیم که بجز pages و posts بخش های دیگه ای مثل services و landings و ... بهش اضافه شده. در اصل به صورت post_type جدید موارد landing و... رو به قالب اضافه کردن.
      آدرس صفحات لندینگ در حال حاضر به این شکله: http://example.com/landing/landing-page-name و میخوایم که عبارت landing در وسط URL حذف بشه و آدرس به این شکل بشه: http://example.com/landing-page-name
      سعی کردیم با استفاده از تغییرات htaccess و قوانین rewriterule ها این کار رو انجام بدیم که متاسفانه با خطای too many redirection مواجه شدیم.
      در مرحله بعد هم در متد register_posty_type() با استفاده کد زیر:
      'rewrite' => [ 'slug' => '/', 'with_front' => false ] سعی کردیم این کار رو انجام بدیم اما متاسفانه همه صفحات و پست ها رو دچار مشکل کرد و مجدد نتیجه ای نداشت.
       
      کسی هست که بتونه کمک کنه تا این مشکل رو حل کنیم؟