ബാബ അവലോകനം ചേർക്കുക php. ഇഷ്‌ടാനുസൃത വേർഡ്പ്രസ്സ് പോസ്റ്റ് തരങ്ങൾ എങ്ങനെ സൃഷ്ടിക്കാം. ഒരു ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരത്തിനായി ഒരു ഇഷ്‌ടാനുസൃത ടെംപ്ലേറ്റ് സൃഷ്‌ടിക്കുക

നിങ്ങളുടെ ഉപഭോക്താക്കൾക്ക് അവരുടെ ഇംപ്രഷനുകൾ സ്വതന്ത്രമായി പങ്കിടാനുള്ള സ്വാതന്ത്ര്യം നൽകിക്കൊണ്ട് അവരിൽ നിന്ന് വിലയേറിയ ഫീഡ്‌ബാക്ക് നേടുക. നിങ്ങളുടെ ഉൽപ്പന്നങ്ങളും കൂടാതെ/അല്ലെങ്കിൽ സേവനങ്ങളും നിങ്ങളുടെ വെബ്‌സൈറ്റിൽ നേരിട്ട് റേറ്റ് ചെയ്യാൻ അവരെ അനുവദിക്കുക. ഞങ്ങളുടെ ഓൺലൈൻ റിവ്യൂ സിസ്റ്റത്തിന്റെ സ്റ്റാൻഡേർഡ് ആയി വരുന്ന പ്രധാന ഫീച്ചറുകൾ ചുവടെ കാണുക.

    അവലോകനങ്ങളും റേറ്റിംഗുകളും

    നിങ്ങളുടെ വെബ്‌സൈറ്റിലേക്ക് PHP റിവ്യൂ സ്‌ക്രിപ്റ്റ് ഉൾച്ചേർക്കുക, നിങ്ങൾ വാഗ്ദാനം ചെയ്യുന്ന ഉൽപ്പന്നങ്ങളിലും സേവനങ്ങളിലും അവരുടെ അനുഭവം പങ്കിടാൻ ക്ലയന്റുകളെ അനുവദിക്കുക. അവർക്ക് മാനദണ്ഡമനുസരിച്ച് റേറ്റുചെയ്യാനും പോസിറ്റീവ്, നെഗറ്റീവ് ഫീഡ്‌ബാക്ക് നൽകാനും കഴിയും.

    ഒന്നിലധികം ഭാഷകൾ

    PHP അവലോകന സംവിധാനത്തിന് ഇംഗ്ലീഷ് മാത്രമല്ല, നിങ്ങൾക്ക് ആവശ്യമുള്ള ഏത് ഭാഷയും സംസാരിക്കാനാകും. ഓരോ വാചകത്തിനും അദ്വിതീയ ഐഡികൾ ഉപയോഗിച്ച് അഡ്മിൻ പേജിൽ നിന്ന് നിങ്ങൾക്ക് എല്ലാ തലക്കെട്ടുകളും സിസ്റ്റം സന്ദേശങ്ങളും വിവർത്തനം ചെയ്യാൻ കഴിയും.

    എഡിറ്റ് ചെയ്യാവുന്ന റേറ്റിംഗ് മാനദണ്ഡം

    ബിസിനസ്സിന്റെ തരത്തെ ആശ്രയിച്ച്, സിസ്റ്റം അഡ്മിൻമാർക്ക് അവലോകനം ചെയ്യാൻ കഴിയും
    ഫ്രണ്ട്-എൻഡ് ഫോമിൽ കാണിക്കുന്നതിന് വ്യത്യസ്ത റേറ്റിംഗ് മാനദണ്ഡങ്ങൾ സജ്ജമാക്കുക.
    ഈ മാനദണ്ഡങ്ങൾ ഓരോന്നും 1 മുതൽ 5 വരെ നക്ഷത്രങ്ങൾ നൽകി റേറ്റുചെയ്തിരിക്കുന്നു.

    ഇമെയിൽ & SMS അറിയിപ്പുകൾ

    ഒരു പുതിയ അവലോകനം പോസ്റ്റ് ചെയ്യുമ്പോൾ ഇമെയിൽ, SMS അലേർട്ടുകൾ അയയ്‌ക്കാൻ ഓൺലൈൻ അവലോകന സംവിധാനം സജ്ജീകരിക്കുക. ഉപയോക്താക്കളുടെ മെനുവിൽ നിന്ന് ഏത് ഉപയോക്താക്കൾക്കാണ് ഈ സന്ദേശങ്ങൾ ലഭിക്കേണ്ടതെന്ന് നിങ്ങൾക്ക് എളുപ്പത്തിൽ വ്യക്തമാക്കാനാകും.

    ഒന്നിലധികം ഉപയോക്തൃ തരങ്ങൾ

    ഉപയോഗിക്കുന്ന വ്യവസായത്തെയും സേവനങ്ങളെയും ആശ്രയിച്ച് പരിധിയില്ലാത്ത ക്ലയന്റ് തരങ്ങൾ സൃഷ്ടിക്കുക. ഹോട്ടൽ റേറ്റിംഗുകൾ ഇനിപ്പറയുന്ന ഉപയോക്തൃ തരങ്ങൾക്കൊപ്പം പോകാം: കുട്ടികളുമൊത്തുള്ള കുടുംബം, ദമ്പതികൾ, ബിസിനസ്സ് യാത്ര തുടങ്ങിയവ. അവ അവലോകനങ്ങളിൽ ലേബലുകളായി കാണപ്പെടുന്നു.

    പ്രതികരിക്കുന്നതും ആകർഷകവുമാണ്

    അവലോകനവും റേറ്റിംഗ് സ്‌ക്രിപ്‌റ്റും എല്ലാ ഉപകരണങ്ങളിലും പ്രവർത്തിക്കുന്നു, വിവിധ സ്‌ക്രീൻ വലുപ്പങ്ങളുമായി തടസ്സമില്ലാതെ പൊരുത്തപ്പെടുന്നു. നിങ്ങളുടെ വെബ്‌സൈറ്റ് ബ്രാൻഡിംഗിന് അനുസൃതമായി, 10 വർണ്ണ ഓപ്ഷനുകളിൽ ഏറ്റവും അനുയോജ്യമായ ഫ്രണ്ട്-എൻഡ് തീം നിങ്ങൾക്ക് തിരഞ്ഞെടുക്കാം.

    അവലോകന ഫോമിന് അടുത്തുള്ള ഒരു ദ്രുത നുറുങ്ങ് ബോക്‌സ് ചില രസകരമായ വാക്കുകൾ ചേർക്കാനും ഉപഭോക്താക്കളെ ആകർഷിക്കാനും നിങ്ങളെ അനുവദിക്കുന്നു. അവലോകന സംവിധാനം ഉപയോക്തൃ തരം അനുസരിച്ച് അവലോകനങ്ങൾ ഫിൽട്ടർ ചെയ്യുന്നു. ഉപഭോക്താക്കൾക്ക് മറ്റ് ക്ലയന്റുകളുടെ റേറ്റിംഗുകളും റേറ്റുചെയ്യാനാകും.

    ഒരു ഡെവലപ്പർ ലൈസൻസ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് സോഴ്സ് കോഡ് ലഭിക്കും കൂടാതെ PHP റിവ്യൂ സ്ക്രിപ്റ്റിൽ എന്തെങ്കിലും ഇഷ്‌ടാനുസൃത മാറ്റങ്ങൾ വരുത്താനും കഴിയും. അഭ്യർത്ഥന പ്രകാരം ഞങ്ങൾക്ക് ഉപഭോക്തൃ അവലോകന സംവിധാനം പരിഷ്കരിക്കാനും കഴിയും.

WooCommerce ടെംപ്ലേറ്റ് ഫയലുകളിൽ നിങ്ങളുടെ സ്റ്റോറിനായുള്ള ഇന്റർഫേസിന്റെ (കൂടാതെ HTML ഇമെയിൽ) ടെംപ്ലേറ്റിന്റെ ലേഔട്ടും ഘടനയും അടങ്ങിയിരിക്കുന്നു. നിങ്ങൾ ഈ ഫയലുകൾ തുറക്കുകയാണെങ്കിൽ, ടെംപ്ലേറ്റ് ഫയലുകൾ സ്വയം എഡിറ്റ് ചെയ്യാതെ തന്നെ ഉള്ളടക്കം ചേർക്കാനും നീക്കാനും നിങ്ങളെ അനുവദിക്കുന്ന നിരവധി കൊളുത്തുകൾ അവയിലെല്ലാം അടങ്ങിയിട്ടുണ്ടെന്ന് നിങ്ങൾ ശ്രദ്ധിക്കും. ടെംപ്ലേറ്റ് ഫയലുകൾ പൂർണ്ണമായും കേടുകൂടാതെയിരിക്കാമെന്നതിനാൽ, അപ്‌ഡേറ്റുകളുമായുള്ള ഏതെങ്കിലും പ്രശ്‌നങ്ങളിൽ നിന്ന് ഈ സമീപനം പരിരക്ഷിക്കുന്നു.

കൂടാതെ, കബളിപ്പിക്കൽ ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഈ ഫയലുകൾ സുരക്ഷിതമായ രീതിയിൽ എഡിറ്റ് ചെയ്യാം. ഉപഫയലുകളുടെയും ഫോൾഡറുകളുടെയും അതേ ശ്രേണിയിലുള്ള ഘടന നിലനിർത്തിക്കൊണ്ട്, /woocommerce എന്ന ഫോൾഡറിൽ നിങ്ങളുടെ ടെംപ്ലേറ്റിലേക്ക് അവ പകർത്തുക. പകർത്തിയ ടെംപ്ലേറ്റ് ഫയലുകൾ സ്ഥിരസ്ഥിതി WooCommerce ടെംപ്ലേറ്റ് ഫയലുകളെ അസാധുവാക്കും. പ്ലഗിന്റെ കാമ്പിൽ തന്നെ ടെംപ്ലേറ്റ് ഫയലുകൾ എഡിറ്റ് ചെയ്യരുത്, കാരണം അവ അപ്‌ഡേറ്റ് പ്രക്രിയയിൽ പുനരാലേഖനം ചെയ്യപ്പെടുകയും അവയിൽ വരുത്തിയ മാറ്റങ്ങൾ നഷ്ടപ്പെടുകയും ചെയ്യും, കാരണം പുതുക്കിയ ടെംപ്ലേറ്റ് ഫയലുകൾ പഴയ ടെംപ്ലേറ്റ് ഫയലുകളെ തിരുത്തിയെഴുതും.

നിങ്ങൾക്ക് ടെംപ്ലേറ്റുകളിലൊന്നിൽ മാറ്റങ്ങൾ വരുത്തണമെങ്കിൽ, അപ്പോൾ ടെംപ്ലേറ്റുകൾ ഫോൾഡറിൽ സ്ഥിതി ചെയ്യുന്ന എല്ലാ ടെംപ്ലേറ്റ് ഫയലുകളും പകർത്തേണ്ട ആവശ്യമില്ല, പക്ഷേ നിങ്ങൾ മാറ്റങ്ങൾ വരുത്താൻ ആഗ്രഹിക്കുന്ന ടെംപ്ലേറ്റ് ഫയൽ പകർത്തിയാൽ മതി. ഇത് ചെയ്യുന്നതിന്, നിങ്ങളുടെ തീമിലെ ഡയറക്‌ടറിയിൽ നിന്ന് ഒരു woocommerce ഫോൾഡർ സൃഷ്‌ടിച്ച് ഫോൾഡറുകളുടെ നെസ്റ്റിംഗ് നിരീക്ഷിച്ച് ടെംപ്ലേറ്റ് അതിലേക്ക് മാറ്റുക.

ഉദാഹരണം: കാർട്ട് ടെംപ്ലേറ്റിൽ മാറ്റങ്ങൾ വരുത്താൻ, പകർത്തുക woocommerce/templates/cart/cart.phpവി. ഇതിനുശേഷം നിങ്ങൾക്ക് ടെംപ്ലേറ്റ് ഫയലിൽ എന്തെങ്കിലും മാറ്റങ്ങൾ വരുത്താം cart.php, നിങ്ങളുടെ തീം ഉള്ള ഫോൾഡറിൽ സ്ഥിതിചെയ്യുന്നു (അതായത് ഫയലിൽ cart.php,സ്ഥിതി ചെയ്യുന്നത് your_theme/woocommerce/cart/cart.php), കൂടാതെ നിങ്ങൾ വരുത്തുന്ന മാറ്റങ്ങൾ WooCommerce അപ്ഡേറ്റ് ചെയ്തതിനുശേഷവും നിലനിൽക്കും.


/woocommerce/templates/ ഡയറക്ടറിയിൽ നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന ടെംപ്ലേറ്റ് ഫയലുകൾ കണ്ടെത്താനാകും

സ്‌പോയിലർ: ഫയലുകളുടെ ലിസ്റ്റ്

(ടെംപ്ലേറ്റ് ഫയലുകളുടെ ഈ ലിസ്റ്റ് WooCommerce 2.0+ ന് പ്രസക്തമാണ്):

archive-product.php

· കാർട്ട്/


· cart-empty.php

cross-sells.php

mini-cart.php

ഷിപ്പിംഗ്-കാൽക്കുലേറ്റർ.php

ഷിപ്പിംഗ്-രീതികൾ.php

totals.php


· ചെക്ക് ഔട്ട്/


cart-errors.php

form-billing.php

form-checkout.php

form-coupon.php

form-login.php

form-pay.php

form-shipping.php

അവലോകനം-order.php

thankyou.php

ഉള്ളടക്കം-product_cat.php

content-product.php

ഉള്ളടക്കം-ഏക-ഉൽപ്പന്നം.php


· ഇമെയിലുകൾ/


· admin-new-order.php

· ഉപഭോക്താവ് പൂർത്തിയാക്കിയ ഓർഡർ.php

customer-invoice.php

· customer-new_account.php

customer-note.php

· ഉപഭോക്തൃ-പ്രോസസ്സിംഗ്-ഓർഡർ.php

· ഉപഭോക്തൃ-റീസെറ്റ്-password.php

ഇമെയിൽ വിലാസങ്ങൾ.php

ഇമെയിൽ-footer.php

ഇമെയിൽ-header.php

ഇമെയിൽ-ഓർഡർ-items.php


· ലൂപ്പ്/


add-to-cart.php

loop-end.php

loop-start.php

no-products-found.php

pagination.php

result-count.php

· sale-flash.php


· എന്റെ അക്കൗണ്ട്/


form-change-password.php

form-edit-address.php

form-login.php

form-Lost-password.php

my-account.php

my-address.php

my-downloads.php

my-orders.php


· ഓർഡർ/


form-tracking.php

ഓർഡർ-വിവരങ്ങൾ.php

ട്രാക്കിംഗ്.php


· കട/


breadcrumb.php

form-login.php

messages.php

wrapper-end.php

ഞങ്ങൾ ഒരു പോസ്റ്റ് എഡിറ്റർ ഫീച്ചറും ഉൾപ്പെടുത്തും ഇഷ്‌ടാനുസൃത ഫീൽഡുകൾ (ഇഷ്‌ടാനുസൃത അല്ലെങ്കിൽ ഇഷ്‌ടാനുസൃത ഫീൽഡുകൾ)ഓരോ തരത്തിനും വേണ്ടി ഫീൽഡുകൾ പുതിയ ടെംപ്ലേറ്റുകളിൽ പ്രദർശിപ്പിക്കുക.

WordPress-ൽ, ഇഷ്‌ടാനുസൃത പോസ്റ്റുകൾ നിങ്ങളുടെ ഉപയോക്താക്കൾക്ക് ഉള്ളടക്കം എങ്ങനെ പ്രദർശിപ്പിക്കണം എന്നതിന്റെ പൂർണ്ണ നിയന്ത്രണം നൽകുന്നു. നിങ്ങളുടെ ബ്ലോഗിൽ പോസ്റ്റുകൾ സൃഷ്ടിക്കുകയാണെങ്കിൽ, ആ പോസ്റ്റുകൾക്കായി മാത്രം നിങ്ങൾക്ക് ഇഷ്ടാനുസൃത ശൈലികൾ സൃഷ്ടിക്കാൻ കഴിയും. സംഗീതത്തെക്കുറിച്ചോ സിനിമകളെക്കുറിച്ചോ നിങ്ങൾ അവലോകനങ്ങൾ എഴുതുകയാണെങ്കിൽ, നിങ്ങൾക്ക് ആവശ്യമുള്ള പോസ്റ്റുകളിൽ അധിക ഇൻപുട്ട് ഏരിയകൾ ചേർക്കാൻ കഴിയും, അവ മറ്റ് ബ്ലോഗ് പോസ്റ്റുകളിൽ ദൃശ്യമാകില്ല.

എന്നാൽ തുടരുന്നതിന് മുമ്പ്, ഉപയോക്തൃ പോസ്റ്റുകൾ എന്താണെന്ന് മനസ്സിലാക്കാം.

WordPress കസ്റ്റം പോസ്റ്റ് തരങ്ങൾ എന്തൊക്കെയാണ്?

ചുരുക്കത്തിൽ, WordPress ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരങ്ങൾ അവയുടെ ഉള്ളടക്കത്തെ അടിസ്ഥാനമാക്കി പോസ്റ്റുകൾ അടുക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു. വേർഡ്പ്രസ്സിൽ, പോസ്റ്റ്, പേജ്, മീഡിയ മുതലായവയാണ് ഡിഫോൾട്ട് പോസ്റ്റ് തരങ്ങൾ.

സാധാരണയായി, അഡ്‌മിൻ കൺസോളിലെ പോസ്റ്റുകൾ വിഭാഗത്തിൽ നിങ്ങളുടെ എല്ലാ പോസ്റ്റുകളും എഴുതുക, തുടർന്ന് അവയ്ക്ക് ഒരു വിഭാഗം നൽകുക. വ്യത്യസ്‌ത തരങ്ങളിലുള്ള എല്ലാ എൻട്രികളും ഒരു ലിസ്റ്റിലാണുള്ളത്, ഇത് ഉള്ളടക്ക തരം അനുസരിച്ച് അവയെ വേർതിരിച്ചറിയാൻ പ്രയാസമാക്കുന്നു.

അഡ്‌മിൻ കൺസോളിലെ സ്വന്തം ലിങ്കുകളുള്ള ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരങ്ങൾ ആ തരത്തിലുള്ള പോസ്റ്റുകളുടെ ഒരു ലിസ്റ്റിലേക്ക് നിങ്ങളെ കൊണ്ടുപോകുന്നു. ഈ രീതിയിൽ സൃഷ്‌ടിച്ച പോസ്റ്റുകൾക്ക് ഒരു സാധാരണ പോസ്‌റ്റ് പോലെ വിഭാഗങ്ങൾ നൽകാം, അതിനാൽ നിങ്ങൾക്ക് താൽപ്പര്യമുള്ള രീതിയിൽ പോസ്റ്റുകൾ അടുക്കാനും അവതരിപ്പിക്കാനും നിങ്ങൾക്ക് സമ്പൂർണ്ണ സ്വാതന്ത്ര്യമുണ്ട്.

മുകളിലുള്ള ഉദാഹരണത്തിൽ, ഒരു ഉപയോക്താവ് നിങ്ങളുടെ സൈറ്റിന്റെ മൂവി ഡാറ്റാബേസ് വിഭാഗത്തിലേക്ക് പോയാൽ, അവലോകന പോസ്റ്റുകൾ ഉൾപ്പെടുത്തില്ല. നിങ്ങൾ 'ആക്ഷൻ', 'റൊമാൻസ്' വിഭാഗങ്ങൾ ഉണ്ടാക്കുകയാണെങ്കിൽ, ഉദാഹരണത്തിന്, നിങ്ങളുടെ ഉപയോക്താക്കൾക്ക് ആക്ഷൻ മൂവി വിഭാഗത്തിലേക്ക് പോകാനും വിഭാഗത്തിലെ എല്ലാ അവലോകനങ്ങളും സിനിമകളും കാണാനും കഴിയും.

നിങ്ങൾ ഒരു പുതിയ പോസ്‌റ്റ് തരം സൃഷ്‌ടിക്കുമ്പോൾ, ഇനിപ്പറയുന്നതുപോലുള്ള നിരവധി ക്രമീകരണങ്ങൾ നിങ്ങൾക്കുണ്ട്: അഡ്‌മിൻ മെനുവിൽ ലിങ്ക് എവിടെയാണ് സ്ഥിതി ചെയ്യുന്നത്, ഈ തരം തിരയൽ ഫലങ്ങളിൽ ഉൾപ്പെടുത്തുമോ, ഒരു ശകലം ടെക്‌സ്‌റ്റ് പ്രദർശിപ്പിക്കുന്നതിനെ ഇത് പിന്തുണയ്‌ക്കുമോ, അഭിപ്രായങ്ങളാണോ അനുവദിച്ചു, തുടങ്ങിയവ.

നിങ്ങൾക്ക് വിവിധ ടൈറ്റിൽ ടെക്സ്റ്റുകൾ മാറ്റാൻ കഴിയും (ഒരു അറേ ഉപയോഗിച്ച് നിർവചിച്ചിരിക്കുന്നത് $ലേബലുകൾ), പുനർനാമകരണം പോലുള്ളവ പുതിയ പോസ്റ്റ് ചേർക്കുകവി പുതിയ സിനിമ ചേർക്കുക. ഉദാഹരണത്തിന്, നിങ്ങൾക്ക് വാചകം പുനർനാമകരണം ചെയ്യാം തിരഞ്ഞെടുത്ത ചിത്രംവി പോസ്റ്റർ ചേർക്കുക.

നിങ്ങളുടെ പോസ്റ്റ് എഡിറ്ററിൽ നിങ്ങൾക്ക് ഇഷ്‌ടാനുസൃത ഫീൽഡ് ഫീച്ചർ പ്രവർത്തനക്ഷമമാക്കാനും കഴിയും, അത് ഡിഫോൾട്ടായി മറഞ്ഞിരിക്കുന്നതും ഒരു ലിങ്ക് വഴി പ്രവർത്തനക്ഷമമാക്കേണ്ടതുമാണ് സ്ക്രീൻ ഓപ്ഷനുകൾഎഡിറ്ററുടെ മുകളിൽ.

സിനിമകളുടെയും മൂവി റിവ്യൂകളുടെയും ഉദാഹരണം തുടരുന്നതിലൂടെ, പോസ്റ്റിന്റെ ഉള്ളടക്കമായി സിനിമയെ കുറിച്ചുള്ള ഹ്രസ്വമായ അവലോകനം സഹിതം റിലീസ് ചെയ്ത വർഷം, സംവിധായകൻ, റേറ്റിംഗുകൾ തുടങ്ങി നിരവധി പാരാമീറ്ററുകൾക്കായി മൂവി പ്രസിദ്ധീകരണങ്ങൾക്ക് ഇഷ്‌ടാനുസൃത/ഇഷ്‌ടാനുസൃത ഫീൽഡുകൾ ചേർക്കാൻ കഴിയും.

സാധാരണയായി നിങ്ങൾ സൃഷ്ടിക്കുന്ന ഏത് ഫീൽഡും ഏത് പോസ്റ്റ് തരത്തിലും ലഭ്യമാണ്, അതിനാൽ പ്ലഗിൻ ആക്സസ് ചെയ്യാൻ കഴിയുന്ന ഓരോ ഫീൽഡിലും നിയന്ത്രണങ്ങൾ ആവശ്യമാണ്.

പുതിയ പോസ്റ്റ് തരങ്ങൾ സൃഷ്ടിക്കുന്നു

നിങ്ങൾ WordPress-ൽ കാര്യമായ മാറ്റങ്ങൾ സൃഷ്ടിക്കുമ്പോൾ, ലഭ്യമായ നടപ്പിലാക്കൽ ഓപ്ഷനുകളിലൊന്ന് ഒരു പ്ലഗിൻ സൃഷ്ടിക്കുക എന്നതാണ്. നിങ്ങൾക്ക് ഫയലിൽ പുതിയ ഇഷ്‌ടാനുസൃത പോസ്റ്റുകൾ സൃഷ്‌ടിക്കാനും കഴിയും പ്രവർത്തനങ്ങൾ.php. ഈ ഗൈഡിനായി ഞങ്ങൾ നമുക്ക് ഒരു പ്ലഗിൻ സൃഷ്ടിച്ച് സിനിമ/അവലോകന ഡാറ്റാബേസിനൊപ്പം ഉദാഹരണം ഉപയോഗിക്കുന്നത് തുടരാം.

ഒരു ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരം സൃഷ്‌ടിക്കുന്നതിന്, ഒരു വേർഡ്പ്രസ്സ് ഫംഗ്‌ഷൻ എന്ന് വിളിക്കുന്ന നിരവധി ഫംഗ്‌ഷനുകൾ നിങ്ങൾ എഴുതേണ്ടതുണ്ട് register_post_type()രണ്ട് പരാമീറ്ററുകളോടെ. നിങ്ങളുടെ പ്രവർത്തനം വേണംഒരു ആക്ഷൻ ഹുക്കിലേക്ക് ബന്ധിക്കപ്പെടും init, അല്ലെങ്കിൽ ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരം ശരിയായി രജിസ്റ്റർ ചെയ്യപ്പെടില്ല.

// ഇഷ്‌ടാനുസൃത ഫംഗ്‌ഷൻ init ആക്ഷൻ ഹുക്ക് add_action("init", "lc_register_movie_post_type") ലേക്ക് ഹുക്ക് ചെയ്തിരിക്കണം; // register_post_type ഫംഗ്‌ഷനെ വിളിക്കുന്ന ഒരു ഇഷ്‌ടാനുസൃത ഫംഗ്‌ഷൻ lc_register_movie_post_type() ( // വിവിധ ടെക്‌സ്‌റ്റ് കഷണങ്ങൾ സജ്ജമാക്കുക, $ ലേബലുകൾ $args അറേയ്‌ക്കുള്ളിൽ ഉപയോഗിക്കുന്നു $labels = array("name" => _x("Movies", "post type general പേര്"), "singular_name" => _x("സിനിമ", "പോസ്റ്റ് തരം ഏകവചന നാമം"), ...); // പോസ്റ്റ് തരം $args = അറേ ("ലേബലുകൾ" => $ ലേബലുകൾ, "വിവരണം" => "എന്റെ ഇഷ്ടാനുസൃത പോസ്റ്റ് തരം", "പൊതുവായത്" => ശരി, ...); ആർഗ്സ്);)

മറ്റ് പ്ലഗിന്നുകളുമായോ തീം ഫംഗ്‌ഷനുകളുമായോ വൈരുദ്ധ്യങ്ങൾ ഒഴിവാക്കാൻ എല്ലാ ഇഷ്‌ടാനുസൃത ഫംഗ്‌ഷനുകളും പ്രിഫിക്‌സ് ചെയ്യണം. LC എന്ന പ്രിഫിക്‌സ് ഇവിടെ ഉപയോഗിക്കും.

പ്രവർത്തനത്തിനുള്ള രണ്ട് പാരാമീറ്ററുകൾ register_post_type()ഈ:

  1. റെക്കോർഡ് തരം പേര്, പരമാവധി 20 പ്രതീകങ്ങൾ, കൂടാതെ സ്‌പെയ്‌സുകളോ വലിയ അക്ഷരങ്ങളോ അടങ്ങിയിരിക്കരുത്
  2. വിളിക്കപ്പെടുന്ന ഒരു അസോസിയേറ്റീവ് അറേ $args, അതിൽ കീ-വാല്യൂ ജോഡികളുടെ രൂപത്തിൽ റെക്കോർഡ് തരത്തെക്കുറിച്ചുള്ള വിവരങ്ങൾ അടങ്ങിയിരിക്കുന്നു 'key' => 'മൂല്യം'

അറേ $args

ഒരു അറേയ്‌ക്കായി ഏറ്റവും സാധാരണയായി ഉപയോഗിക്കുന്ന കീകൾ $argsതാഴെ കാണിച്ചിരിക്കുന്നത്, എല്ലാം ഓപ്ഷണൽ ആണ്:

  • ലേബലുകൾ- അറേ അറേ, വ്യത്യസ്‌ത വാചകങ്ങൾ വ്യക്തമാക്കുന്നു, ഉദാഹരണത്തിന് 'ഒരു പുതിയ എൻട്രി ചേർക്കുക' എന്നത് 'ഒരു പുതിയ സിനിമ ചേർക്കുക' എന്ന് പുനർനാമകരണം ചെയ്യാം. ലേബൽ ശ്രേണിയുടെ കീകൾ വിശദീകരണങ്ങളോടെ താഴെ വിവരിച്ചിരിക്കുന്നു;
  • വിവരണം- റെക്കോർഡ് തരത്തിന്റെ ഹ്രസ്വവും സംക്ഷിപ്തവുമായ വിവരണം, ഇത് ടൈപ്പ് ടെംപ്ലേറ്റുകളിൽ പ്രദർശിപ്പിക്കാൻ കഴിയും, പക്ഷേ മറ്റെവിടെയും ഉപയോഗിക്കില്ല;
  • പൊതു– രചയിതാവിനും സന്ദർശകർക്കും ദൃശ്യമാകുന്ന പോസ്റ്റ് തരമാണ്, ഡിഫോൾട്ട് മൂല്യം തെറ്റാണ്, അതായത് അഡ്മിൻ കൺസോളിൽ പോലും ഇത് ദൃശ്യമാകില്ല;
  • തിരയലിൽ നിന്ന്_ഒഴിവാക്കുക- സാധാരണ തിരയൽ ഫലങ്ങളിൽ ഇത്തരത്തിലുള്ള റെക്കോർഡുകൾ ദൃശ്യമാകുമോ, സ്ഥിര മൂല്യം പൊതു മൂല്യത്തിന് വിപരീതമാണ്;
  • പൊതുവായി_ചോദിക്കാവുന്നത്- http://www.mywebsite.com/?post_type=movie പോലുള്ള ഒരു URL ഉപയോഗിച്ചോ അല്ലെങ്കിൽ query_posts() ഫംഗ്ഷൻ വഴി വിപുലമായ ഉപയോഗത്തിലോ ഇത്തരത്തിലുള്ള പോസ്റ്റ് വീണ്ടെടുക്കാനാകുമോ. സ്ഥിര മൂല്യം പൊതുവായതാണ്;
  • ഷോ_യുഐ– അഡ്മിനിസ്ട്രേറ്റർ കൺട്രോൾ പാനലിൽ മെനു ലിങ്കുകളും മെസേജ് എഡിറ്ററും ബന്ധിപ്പിച്ചിട്ടുണ്ടോ എന്ന്. സ്ഥിര മൂല്യം പൊതുവായതാണ്;
  • കാണിക്കുക_നവ്_മെനുകൾ- രൂപഭാവം -> മെനുകൾ പേജിൽ സൃഷ്‌ടിച്ച നാവിഗേഷൻ മെനുകളിലേക്ക് ഈ തരത്തിലുള്ള എൻട്രികൾ ചേർക്കുമോ, ഡിഫോൾട്ട് മൂല്യം പൊതുവായതാണ്;
  • കാണിക്കുക_ഇൻ_മെനു- അഡ്‌മിൻ കൺസോളിന്റെ നാവിഗേഷനിൽ പോസ്റ്റ് ടൈപ്പ് ലിങ്ക് പ്രദർശിപ്പിച്ചിട്ടുണ്ടോ എന്ന്. FALSE - ലിങ്ക് മറയ്ക്കുന്നു. ശരി - ഒരു പുതിയ ടോപ്പ് ലെവൽ ലിങ്കായി ലിങ്ക് ചേർക്കുന്നു. ഒരു ലൈനിൽ പ്രവേശിക്കുന്നത് നിലവിലുള്ള ഒരു ടോപ്പ് ലെവൽ ലിങ്കിനുള്ളിൽ ഒരു ലിങ്ക് സ്ഥാപിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു, അതായത്, പാരാമീറ്ററുകൾ നൽകുക ഓപ്ഷനുകൾ-general.phpഇത് ക്രമീകരണ ലിങ്കിന് കീഴിൽ സ്ഥാപിക്കുന്നു.
  • അഡ്മിൻ_ബാറിൽ_കാണിക്കുക– ഇത്തരത്തിലുള്ള പോസ്റ്റ് അഡ്‌മിൻ ബാറിന് മുകളിൽ, ലിങ്കിന് താഴെ ദൃശ്യമാകുമോ + പുതിയത്
  • മെനു_സ്ഥാനം- അഡ്‌മിൻ കൺസോളിന്റെ നാവിഗേഷൻ മെനുവിലെ പുതിയ ലിങ്കിന്റെ സ്ഥാനം, 5 പോസ്റ്റുകൾക്ക് താഴെ സ്ഥിതിചെയ്യുന്നു, 100 ക്രമീകരണങ്ങൾക്ക് താഴെ സ്ഥിതിചെയ്യുന്നു, സ്ഥാനങ്ങളുടെ മുഴുവൻ ലിസ്റ്റും വേർഡ്പ്രസ്സ് കോഡെക്സിൽ കാണാം
  • ശ്രേണിപരമായ- ഒരു പാരന്റ് റെക്കോർഡിലേക്ക് ഒരു റെക്കോർഡ് അസൈൻ ചെയ്യാൻ കഴിയുമോ, മൂല്യം ശരിയാണെങ്കിൽ, അറേ $ പിന്തുണയ്ക്കുന്നു'പേജ്-ആട്രിബ്യൂട്ടുകൾ' പാരാമീറ്റർ അടങ്ങിയിരിക്കണം
  • പിന്തുണയ്ക്കുന്നു– ചിത്രങ്ങൾ, ടെക്‌സ്‌റ്റ് ശകലങ്ങൾ, ഇഷ്‌ടാനുസൃത ഫീൽഡുകൾ മുതലായവ പോലുള്ള പോസ്‌റ്റ് ഫംഗ്‌ഷനുകൾ തിരഞ്ഞെടുത്ത് പ്രവർത്തനക്ഷമമാക്കുന്നു. FALSE എന്ന് സജ്ജീകരിച്ചാൽ, ഒരു അറേയ്‌ക്ക് പകരം, ഇത്തരത്തിലുള്ള പോസ്റ്റിന്റെ എഡിറ്റർ ഓഫാണ് - നിങ്ങൾക്ക് ഇതിന്റെ എല്ലാ പോസ്റ്റുകളും ക്ലോസ് ചെയ്യണമെങ്കിൽ ഉപയോഗപ്രദമാണ്. എഡിറ്റിംഗിൽ നിന്ന് ടൈപ്പ് ചെയ്യുക, പക്ഷേ അവ ദൃശ്യമാക്കുക (അറേ മൂല്യങ്ങളുടെ പട്ടിക nee)
  • ടാക്സോണമികൾ- ഈ തരത്തിലുള്ള പ്രസിദ്ധീകരണങ്ങളിൽ പ്രയോഗിക്കാൻ കഴിയുന്ന ടാക്സോണമികളുടെ ഒരു നിര, ടാക്സോണമികൾ ഇതിനകം രജിസ്റ്റർ ചെയ്തിരിക്കണം - അവ ഇവിടെ നിന്ന് സൃഷ്ടിച്ചതല്ല!
  • ഉണ്ട്_ആർക്കൈവ്- ഈ തരത്തിലുള്ള പോസ്റ്റുകൾക്ക് ആർക്കൈവ് പേജുകൾ ഉണ്ടായിരിക്കും, URL-ന് ഒരു പെർമാലിങ്ക് ഘടനയുണ്ട്, കൂടാതെ URL-ന്റെ വിവരണാത്മക ഭാഗം register_post_types() ഫംഗ്‌ഷന്റെ പാരാമീറ്റർ 1 ആണ്, അതായത്, http://www.mywebsite.com/movie_reviews/ കാണിക്കും എല്ലാ സിനിമ_അവലോകന പോസ്റ്റുകളും.
  • query_var- പോസ്‌റ്റ് തരത്തിനും പോസ്റ്റിന്റെ പേരിനുമുള്ള URL അന്വേഷിച്ചുകൊണ്ട് ഒരു പോസ്റ്റ് കാണിക്കാനാകുമോ എന്ന് ശരിയോ തെറ്റോ നിർണ്ണയിക്കുന്നു, അതായത് 'http://www.mywebsite.com/? സിനിമ=മാട്രിക്സ്‘. നിങ്ങൾ ടെക്‌സ്‌റ്റിന്റെ ഒരു വരി നൽകുകയാണെങ്കിൽ, നിങ്ങൾ ? പ്രതീകത്തിന് ശേഷം ടെക്‌സ്‌റ്റ് സ്ഥാപിക്കേണ്ടതുണ്ട്, അതിനാൽ 'ഫിലിം' അവസാനിക്കുന്നത് '? സിനിമ=മാട്രിക്സ്‘.

ലേബലുകളുടെ നിരകൾ

അറേയിലെ ആദ്യ കീ $argsവിളിച്ചു ലേബലുകൾഒരു അറേ ആയിരിക്കണം. ഇത് പോസ്റ്റ് തരവുമായി ബന്ധപ്പെട്ട വാചകത്തിന്റെ വിവിധ ഭാഗങ്ങൾ വ്യക്തമാക്കുന്നു. ഇവിടെ ധാരാളം ഡാറ്റ ഉണ്ടായിരിക്കാമെന്നതിനാൽ, വിളിക്കപ്പെടുന്ന ഒരു അറേ സൃഷ്ടിക്കുന്നതാണ് നല്ലത് $ലേബലുകൾഅവരുടെ സംഭരണത്തിനായി. മുകളിലുള്ള കോഡ് ഇതിന്റെ അർത്ഥം കുറച്ചുകൂടി വ്യക്തമാക്കുന്നു.

ലേബൽ അറേയ്‌ക്കുള്ള ചില പ്രധാന കീകൾ ചുവടെയുണ്ട്, എല്ലാം ഓപ്‌ഷണലാണ്:

  • പേര്- സന്ദേശ തരത്തിനായുള്ള പൊതുവായ പേരുകൾ, ഉദാഹരണത്തിന്, സിനിമകൾ (സിനിമകൾ)
  • ഏകവചന_നാമം- ഇത്തരത്തിലുള്ള ഒരു എൻട്രിക്കുള്ള പേര്, ഉദാഹരണത്തിന്, സിനിമ (സിനിമ)
  • add_new- 'പുതിയത് ചേർക്കുക' എന്ന വാചകം നിർദ്ദിഷ്ട വാചകം ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കുന്നു, ഉദാഹരണത്തിന്, 'സിനിമ ചേർക്കുക'
  • add_new_item- 'പുതിയ പോസ്റ്റ് ചേർക്കുക' എന്നതിന് പകരമായി, ഉദാഹരണത്തിന്, 'പുതിയ സിനിമ ചേർക്കുക'
  • എഡിറ്റ്_ഇനം- 'എഡിറ്റ് പോസ്റ്റ്' എന്നതിന് പകരമായി, ഉദാഹരണത്തിന്, 'എഡിറ്റ് മൂവി' ഉപയോഗിച്ച്
  • ഫീച്ചർ ചെയ്ത_ചിത്രം- പോസ്റ്റ് എഡിറ്ററിലെ 'ഫീച്ചർ ചെയ്ത ഇമേജ്' മാറ്റിസ്ഥാപിക്കൽ, ഉദാഹരണത്തിന്, 'മൂവി പോസ്റ്റർ'
  • set_featured_image- 'സെറ്റ് ഫീച്ചർ ചെയ്‌ത ചിത്രം' മാറ്റിസ്ഥാപിക്കുന്നു, ഉദാഹരണത്തിന്, 'മൂവി പോസ്റ്റർ ചേർക്കുക' എന്ന ഈ ഓപ്ഷൻ ഉപയോഗിച്ച്
  • മെനു_നാമം- മുകളിലെ തലത്തിൽ ലിങ്ക് ടെക്സ്റ്റ് മാറ്റുക, ഡിഫോൾട്ട് ലിങ്ക് ടെക്സ്റ്റ് ആണ് പ്രധാന പേര്

അറേ പിന്തുണയ്ക്കുന്നു

// എന്റെ പോസ്റ്റ് തരം $supports = അറേ ("ശീർഷകം", "എഡിറ്റർ", "രചയിതാവ്", "ലഘുചിത്രം") എന്നതിനായി പോസ്റ്റ് എഡിറ്ററിൽ നിർദ്ദിഷ്ട സവിശേഷതകൾ പ്രവർത്തനക്ഷമമാക്കുക; // എന്റെ പോസ്റ്റ് തരത്തിനായുള്ള പോസ്റ്റ് എഡിറ്ററിന്റെ എല്ലാ സവിശേഷതകളും പ്രവർത്തനരഹിതമാക്കുക $supports = FALSE;

അറേയിലെ കീകളിൽ ഒന്ന് $argsവിളിച്ചു പിന്തുണയ്ക്കുന്നു. നിങ്ങളുടെ പോസ്‌റ്റ് തരത്തിനായി പ്രവർത്തനക്ഷമമാക്കാൻ ആഗ്രഹിക്കുന്ന പോസ്റ്റ് എഡിറ്റർ ഫീച്ചറുകളുടെ ഒരു ലിസ്റ്റ് നിങ്ങൾ രേഖപ്പെടുത്തുന്ന ഒരു ലളിതമായ അറേയാണിത്. സ്ഥിരസ്ഥിതിയായി, തലക്കെട്ടും എഡിറ്ററും മാത്രമേ പ്രവർത്തനക്ഷമമാക്കിയിട്ടുള്ളൂ.

എല്ലാ എഡിറ്റർ ഫംഗ്‌ഷനുകളും അപ്രാപ്‌തമാക്കുന്നതിന് അറേയ്‌ക്ക് പകരം നിങ്ങൾക്ക് FALSE എന്ന് സജ്ജീകരിക്കാനും കഴിയും, തലക്കെട്ടും ഉള്ളടക്കം ചേർക്കുന്ന ഏരിയയും ഓഫുചെയ്യുക. ഇതിനർത്ഥം എൻട്രി എഡിറ്റ് ചെയ്യാൻ കഴിയില്ല, പക്ഷേ ഇപ്പോഴും പൂർണ്ണമായും ദൃശ്യമാണ്.

നിങ്ങൾക്ക് ഒരു അറേയിൽ ഉൾപ്പെടുത്താവുന്ന പ്രവർത്തനങ്ങളുടെ ഒരു ലിസ്റ്റ് ഇതാ $ പിന്തുണയ്ക്കുന്നു:

  • ശീർഷകം (ശീർഷകം)
  • എഡിറ്റർ
  • രചയിതാവ് - ശ്രദ്ധിക്കുക: പോസ്റ്റിന്റെ രചയിതാവിനെ മാറ്റാൻ ഇത് നിങ്ങളെ അനുവദിക്കുന്നു
  • ലഘുചിത്രം (ഐക്കൺ)
  • ഉദ്ധരണി (വാചക ശകലം)
  • ട്രാക്ക്ബാക്കുകൾ
  • ഇഷ്‌ടാനുസൃത ഫീൽഡുകൾ (ഇഷ്‌ടാനുസൃത ഫീൽഡ്)
  • അഭിപ്രായങ്ങൾ
  • പുനരവലോകനങ്ങൾ (പതിപ്പുകൾ)
  • പേജ്-ആട്രിബ്യൂട്ടുകൾ
  • പോസ്റ്റ് ഫോർമാറ്റുകൾ (പോസ്റ്റ് ഫോർമാറ്റുകൾ)

ഒരു പ്ലഗിൻ വഴി ഒരു ഇഷ്ടാനുസൃത വേർഡ്പ്രസ്സ് പോസ്റ്റ് തരം സൃഷ്ടിക്കുന്നു

ഫംഗ്‌ഷന് ആവശ്യമായ പാരാമീറ്ററുകൾ എന്താണെന്ന് ഇപ്പോൾ ഞങ്ങൾക്കറിയാം, നമുക്ക് സ്വന്തമായി പ്ലഗിൻ സൃഷ്‌ടിക്കാനും ഞങ്ങളുടെ സ്വന്തം ഫംഗ്‌ഷൻ എഴുതാനും ഇവന്റിലേക്ക് അറ്റാച്ചുചെയ്യാനും കഴിയും init.

lc_custom_post_movie() init ആക്ഷൻ ഹുക്കിലേക്ക് add_action("init", "lc_custom_post_movie"); // ഒരു മൂവി പോസ്റ്റ് ടൈപ്പ് ഫംഗ്‌ഷൻ രജിസ്റ്റർ ചെയ്യുന്നതിനുള്ള ഇഷ്‌ടാനുസൃത പ്രവർത്തനം lc_custom_post_movie() ( // ലേബലുകൾ സജ്ജമാക്കുക, ഈ വേരിയബിൾ $args അറേയിൽ ഉപയോഗിക്കുന്നു $labels = array("name" => __("Movies"), "singular_name " => __("Movie"), "add_new" => __("പുതിയ സിനിമ ചേർക്കുക"), "add_new_item" => __("പുതിയ സിനിമ ചേർക്കുക"), "edit_item" => __("സിനിമ എഡിറ്റ് ചെയ്യുക") , "new_item" => __("പുതിയ സിനിമ"), "all_items" => __("എല്ലാ സിനിമകളും"), "view_item" => __("സിനിമ കാണുക"), "search_items" => __("Search Movies" "), "featured_image" => "Poster", "set_featured_image" => "Poster ചേർക്കുക"); // ഞങ്ങളുടെ പോസ്റ്റ് തരത്തിനായുള്ള ആർഗ്യുമെന്റുകൾ, register_post_type() $args = അറേ("ലേബലുകൾ" എന്നതിന്റെ പാരാമീറ്റർ 2 ആയി നൽകണം => $ലേബലുകൾ, "വിവരണം" => "ഞങ്ങളുടെ സിനിമകളും മൂവി നിർദ്ദിഷ്ട ഡാറ്റയും സൂക്ഷിക്കുന്നു", "പബ്ലിക്" => true, "menu_position" => 5, "supports" => array("title", "editor", " ലഘുചിത്രം", "ഉദ്ധരണം", "അഭിപ്രായങ്ങൾ", "കസ്റ്റം-ഫീൽഡുകൾ"), "has_archive" => true, "show_in_admin_bar" => true, "show_in_nav_menus" => true, "has_archive" => true, "query_var" = > "ഫിലിം"); // യഥാർത്ഥ വേർഡ്പ്രസ്സ് ഫംഗ്‌ഷനെ വിളിക്കുക // പാരാമീറ്റർ 1 എന്നത് പോസ്റ്റ് തരത്തിനുള്ള ഒരു പേരാണ് // പാരാമീറ്റർ 2 എന്നത് $args അറേ രജിസ്‌റ്റർ_പോസ്റ്റ്_ടൈപ്പ് ("മൂവി", $args); ) //ഹുക്ക് lc_custom_post_movie_reviews() init ആക്ഷൻ ഹുക്കിലേക്ക് add_action("init", "lc_custom_post_movie_reviews"); // ഒരു മൂവി റിവ്യൂ പോസ്റ്റ് ടൈപ്പ് ഫംഗ്‌ഷൻ രജിസ്റ്റർ ചെയ്യുന്നതിനുള്ള ഇഷ്‌ടാനുസൃത ഫംഗ്‌ഷൻ lc_custom_post_movie_reviews() ( // ലേബലുകൾ സജ്ജമാക്കുക, ഈ വേരിയബിൾ $args അറേയിൽ ഉപയോഗിക്കുന്നു $labels = array("name" => __("Movie Reviews"), "singular_name" => __("സിനിമ അവലോകനം"), "add_new" => __("പുതിയ മൂവി അവലോകനം ചേർക്കുക"), "add_new_item" => __("പുതിയ മൂവി അവലോകനം ചേർക്കുക"), "edit_item" => __( "സിനിമ അവലോകനം എഡിറ്റ് ചെയ്യുക"), "new_item" => __("പുതിയ മൂവി അവലോകനം"), "all_items" => __("എല്ലാ സിനിമാ അവലോകനങ്ങളും"), "view_item" => __("സിനിമ അവലോകനങ്ങൾ കാണുക"), " search_items" => __("മൂവി അവലോകനങ്ങൾ തിരയുക")); // ഞങ്ങളുടെ പോസ്റ്റ് തരത്തിനായുള്ള ആർഗ്യുമെന്റുകൾ, register_post_type() $args = അറേ("ലേബലുകൾ" => $ലേബലുകൾ, "വിവരണം" = പാരാമീറ്റർ 2 ആയി നൽകണം > "ഞങ്ങളുടെ സിനിമ അവലോകനങ്ങൾ ഹോൾഡ് ചെയ്യുന്നു", "പബ്ലിക്" => true, "menu_position" => 6, "supports" => array("title", "editor", "thumbnail", "excerpt", "comments", " custom-fields"), "has_archive" => true, "show_in_admin_bar" => true, "show_in_nav_menus" => true, "has_archive" => true); // യഥാർത്ഥ WordPress ഫംഗ്‌ഷനെ വിളിക്കുക // പരാമീറ്റർ 1 എന്നതിന്റെ പേരാണ് പോസ്റ്റ് തരം // $args അറേ പാരാമീറ്ററിൽ പോകുന്നു 2. register_post_type("review", $args); )

നിങ്ങൾ ഈ പ്ലഗിൻ പ്രവർത്തനക്ഷമമാക്കുകയാണെങ്കിൽ, അഡ്‌മിൻ കൺസോളിന്റെ നാവിഗേഷൻ ബാറിൽ പോസ്റ്റുകളുടെ ലിങ്കിന് തൊട്ടുപിന്നാലെ നിങ്ങൾ ഒരു പുതിയ ലിങ്ക് കാണും.

മൗസ് ഹോവർ ചെയ്യുമ്പോൾ, 'എല്ലാം കാണുക', 'പുതിയത് ചേർക്കുക' എന്നീ മെനു ഇനങ്ങൾ കാണിക്കും, വാചകം അറേയിൽ വ്യക്തമാക്കിയതിന് സമാനമായിരിക്കും. $ലേബലുകൾ. ലിങ്കുകൾ മാറ്റിയ എഡിറ്ററിൽ നോക്കുക.

നൽകിയിരിക്കുന്ന റെക്കോർഡുകൾക്കായി ഇഷ്‌ടാനുസൃത ഫീൽഡുകൾ പരിമിതപ്പെടുത്തുക

നിങ്ങൾ ഒരു റെക്കോർഡിലേക്ക് നിങ്ങളുടെ ഫീൽഡുകൾ ചേർക്കുമ്പോൾ, ഫീൽഡുകൾ സംരക്ഷിക്കപ്പെടും, നിങ്ങൾക്ക് പുതിയ റെക്കോർഡിലേക്ക് വേഗത്തിൽ എന്തെങ്കിലും ചേർക്കാനാകും. നിങ്ങൾ ചേർത്ത ഇഷ്‌ടാനുസൃത ഫീൽഡുകൾ ഓരോ എൻട്രിയുടെയും ഡ്രോപ്പ്ഡൗൺ ലിസ്റ്റിൽ ദൃശ്യമാകും. ചില പോസ്‌റ്റ് തരങ്ങളിൽ നിങ്ങൾ തിരയുന്ന ഫീൽഡ് കണ്ടെത്തുന്നത് ഇത് ബുദ്ധിമുട്ടാക്കും. നിങ്ങൾക്ക് ഇഷ്ടാനുസൃത ഫീൽഡുകൾ പരിമിതപ്പെടുത്തണമെങ്കിൽ അവ ചില പോസ്റ്റ് തരങ്ങൾക്ക് മാത്രമേ ലഭ്യമാകൂ, അപ്പോൾ ഏറ്റവും എളുപ്പമുള്ള മാർഗ്ഗം ഒരു പ്ലഗിൻ വഴിയാണ്.

get_post_meta()

  • 3 പാരാമീറ്ററുകൾ എടുക്കുന്നു ഒപ്പം മടങ്ങുന്നുഫലമായി
  • ആദ്യത്തെ പാരാമീറ്റർ പോസ്റ്റ് ഐഡിയാണ്, നിങ്ങൾക്കത് ഇവിടെ ഉപയോഗിക്കാം $post->IDനിലവിൽ പ്രദർശിപ്പിച്ചിരിക്കുന്ന എൻട്രിയുടെ ഐഡി ലഭിക്കാൻ
  • രണ്ടാമത്തെ പാരാമീറ്റർ - ഒരു ഇഷ്‌ടാനുസൃത റെക്കോർഡ് ഫീൽഡിന്റെ പേര്, കേസ് സെൻസിറ്റീവ്
  • മൂന്നാമത്തെ പരാമീറ്റർ ബൂളിയൻ തരം ആണ് $ഒറ്റകൂടാതെ TRUE ആകാം (ഫലം ഒരു സ്ട്രിംഗ് ആയി നൽകുന്നു) അല്ലെങ്കിൽ FALSE (ഒരു അറേ നൽകുന്നു).

കുറിപ്പ്:ഒരേ പേരും വ്യത്യസ്ത മൂല്യങ്ങളും ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഒന്നിലധികം ഇഷ്‌ടാനുസൃത ഫീൽഡുകൾ സൃഷ്ടിക്കാൻ കഴിയും. ഒരേ പേരിൽ ഒന്നിലധികം ഫീൽഡുകൾ ഉണ്ടെങ്കിൽ, FALSE സജ്ജീകരിക്കുന്നത് അവയുടെ ഒരു ശ്രേണി നൽകും.

ഐഡി, "ബോക്സ് ആർട്ട്", TRUE); എങ്കിൽ (!ശൂന്യ($movie_box_art)) ( ?>
" alt=" !}">

ചടങ്ങ് മുതൽ get_post_meta()ഒരു മൂല്യം നൽകുന്നു, അതനുസരിച്ച് രൂപഭാവം മാറ്റാൻ നിങ്ങൾക്ക് ഒരു സോപാധിക എക്സ്പ്രഷനിൽ മൂല്യം ഉപയോഗിക്കാം.

മുകളിലെ ഉദാഹരണത്തിൽ, സിനിമയിൽ ഒരു ഇഷ്‌ടാനുസൃത ഫീൽഡായി നൽകിയിട്ടുള്ള ബോക്‌സ് ആർട്ട് അടങ്ങിയിട്ടുണ്ടോയെന്ന് ഞങ്ങൾ പരിശോധിക്കുന്നു. എങ്കിൽ $movie_box_artശൂന്യമല്ല, ഡിവിയും ചിത്രവും പ്രദർശിപ്പിക്കുക.

വിപുലമായ ഇഷ്‌ടാനുസൃത ഫീൽഡുകൾ പ്രദർശിപ്പിക്കുന്നു

// ഡിസ്പ്ലേ ഫീൽഡ് മൂല്യം the_field("FIELD NAME"); // റിട്ടേൺ ഫീൽഡ് മൂല്യം get_field("FIELD NAME");

വിപുലമായ ഇഷ്‌ടാനുസൃത ഫീൽഡ് പ്ലഗിൻ ഫീൽഡുകൾ പ്രദർശിപ്പിക്കുന്നതിന് അതിന്റേതായ പ്രവർത്തനങ്ങളും ഷോർട്ട്‌കോഡുകളും വാഗ്ദാനം ചെയ്യുന്നു.

the_field ('FIELD NAME');

ഒരു നിർദ്ദിഷ്‌ട ഫീൽഡിന്റെ മൂല്യം പ്രദർശിപ്പിക്കുന്നു, ഫീൽഡ് ഗ്രൂപ്പ് സൃഷ്‌ടിക്കുമ്പോൾ നിങ്ങൾ വ്യക്തമാക്കിയ ഫീൽഡ് നാമം ഉപയോഗിക്കണം.

get_field('FIELD NAME');

നിർദ്ദിഷ്‌ട ഫീൽഡിന്റെ മൂല്യം നൽകുന്നു, സോപാധിക എക്‌സ്‌പ്രഷനുകൾക്ക് ഉപയോഗപ്രദമാണ്.

നിങ്ങൾക്ക് ഏറ്റവും ആവശ്യമായി വരുന്ന ഫീച്ചറുകൾ ഇവയാണ്. നിരവധി അധിക സവിശേഷതകൾ ഉണ്ട്, നിങ്ങൾക്ക് അവയിൽ കണ്ടെത്താനാകും.

ഷോർട്ട്കോഡുകൾ

മുകളിലെ ഷോർട്ട് കോഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഒരു പോസ്റ്റിൽ നേരിട്ട് ഫീൽഡുകൾ പ്രദർശിപ്പിക്കാൻ കഴിയും.

പ്രധാന പേജിൽ ഒരു ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരം പ്രദർശിപ്പിക്കുക

// pre_get_posts ആക്ഷൻ ഹുക്ക് add_action("pre_get_posts", "add_reviews_to_frontpage") ലേക്ക് ഞങ്ങളുടെ ഇഷ്ടാനുസൃത ഫംഗ്‌ഷൻ ഹുക്ക് ചെയ്യുക; // പ്രധാന ചോദ്യ ഫംഗ്‌ഷൻ add_reviews_to_frontpage($query) മാറ്റുക ( if (is_home() && $query->is_main_query()) ( $query->set("post_type", array("post", "movie", "review "));) $query തിരികെ നൽകുക;)

ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരങ്ങൾ സ്ഥിരസ്ഥിതിയായി പ്രധാന പേജിൽ ദൃശ്യമാകില്ല, അതിനാൽ ഒബ്‌ജക്റ്റിന്റെ സെറ്റ് രീതിയെ വിളിക്കുന്ന ഒരു പുതിയ ഫംഗ്‌ഷൻ നിങ്ങൾ സൃഷ്‌ടിക്കേണ്ടതുണ്ട് WP_Queryവേർഡ്പ്രസ്സ്.

സന്ദർശകൻ ഹോം പേജിലാണോ എന്നും സജീവമായ അഭ്യർത്ഥന വേർഡ്പ്രസ്സ് സൃഷ്ടിച്ച പ്രാഥമികമാണോ എന്നും ഫംഗ്ഷൻ പരിശോധിക്കുന്നു.

$query->സെറ്റ്()രണ്ട് പാരാമീറ്ററുകൾ എടുക്കുന്നു:

  • നിങ്ങൾ മാറ്റാൻ ആഗ്രഹിക്കുന്ന മുൻഗണനയാണ് ആദ്യ പാരാമീറ്റർ, ഞങ്ങളുടെ കാര്യത്തിൽ ഞങ്ങൾ മുൻഗണന മാറ്റുന്നു പോസ്റ്റ്_തരം
  • രണ്ടാമത്തെ പാരാമീറ്റർ നിങ്ങൾ ആട്രിബ്യൂട്ട് മൂല്യമായി കൈമാറാൻ ആഗ്രഹിക്കുന്ന അറേയാണ് പോസ്റ്റ്_തരം

മുകളിലെ കോഡ് ഉദാഹരണത്തിൽ, അറേ ആരംഭിക്കുന്നത് 'പോസ്റ്റ്' എന്നതിൽ നിന്നാണ് - അതിനാലാണ് ഓരോ വേർഡ്പ്രസ്സ് പോസ്റ്റും 'പോസ്റ്റ്' എന്ന തരത്തിൽ ഉള്ളത്, ഞങ്ങൾ ഇപ്പോഴും അത് പ്രധാന പേജിൽ ഉൾപ്പെടുത്താൻ ആഗ്രഹിക്കുന്നു.

നിങ്ങളുടെ ഹോം പേജിൽ തന്നിരിക്കുന്ന തരത്തിലുള്ള ഇഷ്‌ടാനുസൃത പോസ്റ്റുകൾ മാത്രം ഉപയോഗിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, നിങ്ങൾക്ക് 'പോസ്റ്റുകൾ' നീക്കം ചെയ്യാനും നിങ്ങളുടെ സ്വന്തം പോസ്റ്റ് തരം ഉപയോഗിക്കാനും കഴിയും.

നിങ്ങൾ നൽകുന്ന മൂല്യം ഫംഗ്‌ഷന്റെ പാരാമീറ്റർ 1 മായി പൊരുത്തപ്പെടണം register_post_type().

ഉപസംഹാരം

ഈ ട്യൂട്ടോറിയലിൽ, ഇഷ്‌ടാനുസൃത തരങ്ങൾ എങ്ങനെ സൃഷ്‌ടിക്കാമെന്നും നിങ്ങൾ എന്ത് ഡാറ്റയാണ് ചെയ്യേണ്ടതെന്നും ഞങ്ങൾ കാണിക്കുന്നു. ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരങ്ങളുടെ വഴക്കം ഏതൊരു വേർഡ്പ്രസ്സ് സൈറ്റിനും വിലയേറിയ പ്രവർത്തനക്ഷമത നൽകുന്നു.

വേർഡ്പ്രസ്സ് കസ്റ്റമൈസേഷനായി നിർമ്മിച്ചതാണ്. അതിന്റെ ഓരോ ഭാഗവും ഇഷ്ടാനുസൃതമാക്കാൻ കഴിയുന്ന തരത്തിലാണ് ഇത് സൃഷ്ടിച്ചത്. ഈ ഗൈഡിൽ, വേർഡ്പ്രസിന്റെ ഏറ്റവും ശക്തമായ സവിശേഷതകളിലൊന്ന് ഞങ്ങൾ കവർ ചെയ്യും ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരങ്ങൾ, ഒപ്പം ഈ അത്ഭുതകരമായ സവിശേഷത ഉപയോഗിച്ച് വേർഡ്പ്രസ്സ് എങ്ങനെ ഉയർന്നു.

| ഉറവിടങ്ങൾ ഡൗൺലോഡ് ചെയ്യുക |

കസ്റ്റം പോസ്റ്റ് തരങ്ങൾ എന്തൊക്കെയാണ്?

നിങ്ങളുടെ ബ്ലോഗിൽ ചെയ്യാൻ ആഗ്രഹിക്കുന്നുവെന്ന് പറയാം പ്രത്യേക വിഭാഗംസിനിമാ നിരൂപണങ്ങൾക്കായി. ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരങ്ങൾ ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഇതുപോലെ ഒരു പുതിയ തരം സൃഷ്‌ടിക്കാൻ കഴിയും പോസ്റ്റുകൾഅഥവാ പേജുകൾ, അതിൽ മറ്റൊരു കൂട്ടം ഡാറ്റ അടങ്ങിയിരിക്കും. ഇതിന് അതിന്റേതായ അഡ്മിൻ മെനു, പ്രത്യേക എഡിറ്റിംഗ് പേജുകൾ, സ്വന്തം ടാക്സോണമി, പൂർണ്ണമായ പ്രസിദ്ധീകരണങ്ങൾക്ക് ആവശ്യമായ മറ്റ് സവിശേഷതകൾ എന്നിവ ഉണ്ടായിരിക്കും.

കസ്റ്റം പോസ്റ്റ് തരങ്ങൾ- പോലുള്ള സ്റ്റാൻഡേർഡ് തരങ്ങൾക്കൊപ്പം ഉപയോഗിക്കുന്ന ഒരു പുതിയ അഡ്മിനിസ്ട്രേറ്റീവ് ക്രമീകരണങ്ങൾ പോസ്റ്റുകൾ, പേജുകൾ, അറ്റാച്ച് ചെയ്ത ഫയലുകൾഇത്യാദി. ഒരു ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരത്തിന് ഏത് തരത്തിലുള്ള വിവരങ്ങളും സംഭരിക്കാൻ കഴിയും. ഇതിന് സ്വന്തമായി എഡിറ്ററും മീഡിയ ലോഡറും ഉണ്ട്. എളുപ്പത്തിലുള്ള ഡാറ്റ മാനേജ്മെന്റിനായി ഇത് നിലവിലുള്ള വേർഡ്പ്രസ്സ് പട്ടിക ഘടന ഉപയോഗിക്കുന്നു. ഉപയോഗിച്ച് ഇഷ്ടാനുസൃത പോസ്റ്റ് തരങ്ങൾ സൃഷ്ടിക്കുന്നതിന്റെ പ്രധാന നേട്ടം WordPress API- നിലവിലുള്ള തീമുകളും ടെംപ്ലേറ്റുകളും ഉപയോഗിച്ച് ഇത് ഉപയോഗിക്കാൻ എളുപ്പമാണ്. ഇഷ്‌ടാനുസൃത പോസ്റ്റുകളുടെ തരങ്ങളും SEO-സൗഹൃദഅതിന്റെ പെർമാലിങ്കുകൾ കാരണം.

എന്തിനാണ് ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരങ്ങൾ ഉപയോഗിക്കുന്നത്?

വ്യത്യസ്‌ത തരത്തിലുള്ള പോസ്റ്റുകൾ വ്യത്യസ്‌ത ബക്കറ്റുകളിൽ സംഭരിക്കാൻ ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരങ്ങൾ നിങ്ങളെ സഹായിക്കുന്നു. അവ നമ്മുടെ സ്ഥിരം പോസ്റ്റുകളെ മറ്റുള്ളവരിൽ നിന്ന് വേർതിരിക്കുന്നു. വളരെ ലളിതം!

ഒരു കസ്റ്റം പോസ്റ്റ് തരം പ്ലഗിൻ സൃഷ്ടിക്കുന്നതിനുള്ള ഉദാഹരണം

ഞങ്ങളുടെ സിനിമാ അവലോകനങ്ങൾ കാണിക്കുന്ന ഒരു പുതിയ തരം പോസ്റ്റ് പ്രദർശിപ്പിക്കുന്നതിന് ഞങ്ങൾ ഇവിടെ ഒരു പ്ലഗിൻ സൃഷ്ടിക്കും. നമുക്ക് തുടങ്ങാം.

ഘട്ടം 1. ഒരു WordPress പ്ലഗിൻ ഫോൾഡർ സൃഷ്ടിക്കുക

നിങ്ങളുടെ വേർഡ്പ്രസ്സ് പ്ലഗിന്നുകളുടെ ഫോൾഡർ തുറന്ന് പുതിയൊരെണ്ണം സൃഷ്ടിക്കുക സിനിമ-അവലോകനങ്ങൾ.

ഘട്ടം 2. ഒരു PHP ഫയൽ സൃഷ്ടിക്കുക

ഫോൾഡർ തുറന്ന് സൃഷ്ടിക്കുക PHPഎന്ന ഫയൽ Movie-Reviews.php.

ഘട്ടം 3. ഒരു തലക്കെട്ട് ചേർക്കുക

ഫയൽ തുറന്ന് പ്ലഗിൻ ഹെഡർ കോഡ് ചേർക്കുക.

ക്ലോസ് കമാൻഡിന് മുമ്പ് PHP, പേര് പ്രകാരം ഒരു ഇഷ്‌ടാനുസൃത ഫംഗ്‌ഷൻ എക്‌സിക്യൂട്ട് ചെയ്യുന്നതിന് ഇനിപ്പറയുന്ന കോഡിന്റെ വരി നൽകുക create_movie_reviewഓരോ തവണയും പേജ് ജനറേറ്റ് ചെയ്യുമ്പോൾ ആരംഭിക്കുമ്പോൾ.

Add_action("init", "create_movie_review");

ഘട്ടം 5. ഫംഗ്ഷൻ എക്സിക്യൂട്ട് ചെയ്യുക

ഒരു ഫംഗ്ഷൻ എക്സിക്യൂട്ട് ചെയ്യുക create_movie_review:

ഫംഗ്ഷൻ create_movie_review() ( register_post_type("movie_reviews", array("labels" => array("name" => "Movie Reviews", "singular_name" => "Movie Review", "add_new" => "Add New", "add_new_item" => "പുതിയ മൂവി അവലോകനം ചേർക്കുക", "edit" => "എഡിറ്റ്", "edit_item" => "സിനിമ അവലോകനം എഡിറ്റ് ചെയ്യുക", "new_item" => "പുതിയ മൂവി അവലോകനം", "കാണുക" => "കാണുക ", "view_item" => "സിനിമ അവലോകനം കാണുക", "search_items" => "സിനിമ അവലോകനങ്ങൾ തിരയുക", "not_found" => "സിനിമ അവലോകനങ്ങളൊന്നും കണ്ടെത്തിയില്ല", "not_found_in_trash" => "ട്രാഷിൽ മൂവി അവലോകനങ്ങളൊന്നും കണ്ടെത്തിയില്ല", "രക്ഷാകർതൃ" => "രക്ഷാകർതൃ മൂവി അവലോകനം"), "പൊതുവായത്" => true, "menu_position" => 15, "supports" => array("title", "editor", "comments", "thumbnail", " കസ്റ്റം-ഫീൽഡുകൾ"), "ടാക്സോണമികൾ" => അറേ(""), "മെനു_ഐക്കൺ" => plugins_url("images/image.png", __FILE__), "has_archive" => true)); )

ഫംഗ്ഷൻ രജിസ്റ്റർ_പോസ്റ്റ്_തരംഞങ്ങൾക്ക് വേണ്ടി മിക്ക ജോലികളും ചെയ്യുന്നു. ഒരിക്കൽ വിളിച്ചാൽ, അഡ്മിനിലെ വ്യത്യസ്ത വിഭാഗങ്ങൾ ഉൾപ്പെടെ, പുതിയ ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരത്തിനായി ഇത് വേർഡ്പ്രസ്സ് പരിതസ്ഥിതി തയ്യാറാക്കുന്നു. ഭാഗങ്ങൾ.

ഈ പ്രവർത്തനം എടുക്കുന്നു രണ്ട് വാദങ്ങൾ: ആദ്യത്തേത് ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരത്തിന്റെ അദ്വിതീയ നാമമാണ്, രണ്ടാമത്തേത് പുതിയ ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരത്തിന്റെ സവിശേഷതകളെ പ്രതിനിധീകരിക്കുന്ന ഒരു അറേയാണ്. ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരത്തിന്റെ വ്യത്യസ്‌ത ഭാഗങ്ങളിൽ ഏതൊക്കെ ടെക്‌സ്‌റ്റ് സ്‌ട്രിംഗുകൾ ദൃശ്യമാകുമെന്ന് സൂചിപ്പിക്കുന്ന വ്യത്യസ്‌ത ലേബലുകൾ അടങ്ങുന്ന മറ്റൊരു അറേ ഇതാ, " പേര്"കൺസോളിൽ ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരത്തിന്റെ പേര് പ്രദർശിപ്പിക്കുന്നു," തിരുത്തുക" ഒപ്പം " കാഴ്ച"ബട്ടണുകളിൽ യഥാക്രമം പ്രദർശിപ്പിക്കും എഡിറ്റ് ചെയ്യുകഒപ്പം കാണുക. ബാക്കിയുള്ളവർ സ്വയം സംസാരിക്കുമെന്ന് ഞാൻ കരുതുന്നു.

വാദങ്ങൾ:

  • "പൊതു" => ശരി- അഡ്‌മിൻ പാനലിലും ക്ലയന്റ് ഭാഗത്തിലും ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരത്തിന്റെ ദൃശ്യപരത നിർണ്ണയിക്കുന്നു.
  • "menu_position" => 15- ഒരു ഇഷ്‌ടാനുസൃത എൻട്രി തരത്തിനായുള്ള ഒരു മെനു ഇനം സൂചിപ്പിക്കുന്നു.
  • "പിന്തുണയ്ക്കുന്നു" => അറേ("ശീർഷകം", "എഡിറ്റർ", "അഭിപ്രായങ്ങൾ", "ലഘുചിത്രം", "ഇഷ്‌ടാനുസൃത-ഫീൽഡുകൾ") - പ്രദർശിപ്പിക്കുന്ന ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരത്തിന്റെ സവിശേഷതകൾ നിർവചിക്കുന്നു.
  • "ടാക്സോണമികൾ" => അറേ(" ")- ഇഷ്ടാനുസൃത ടാക്സോണമികൾ സൃഷ്ടിക്കുന്നു. അവ ഇവിടെ നിർവചിച്ചിട്ടില്ല.
  • "menu_icon" => plugins_url("images/image.png", __FILE__ ) - അഡ്മിനിസ്ട്രേറ്റർ മെനു ഐക്കൺ പ്രദർശിപ്പിക്കുന്നു.
  • "has_archive" => true- ഒരു ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരം ആർക്കൈവുചെയ്യുന്നത് പ്രാപ്‌തമാക്കുന്നു.

സവിശേഷതയെക്കുറിച്ചുള്ള വേർഡ്പ്രസ്സ് കോഡെക്സ് പേജിൽ രജിസ്റ്റർ_പോസ്റ്റ്_തരംഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരങ്ങളിൽ ഉപയോഗിക്കുന്ന ആർഗ്യുമെന്റുകളെക്കുറിച്ച് നിങ്ങൾക്ക് കൂടുതൽ വായിക്കാം.

ഘട്ടം 6. ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരത്തിനായുള്ള ഐക്കൺ

ഐക്കൺ വലുപ്പം സംരക്ഷിക്കുക 16 x 16 pxനിങ്ങളുടെ നിലവിലെ പ്ലഗിൻ ഫോൾഡറിലേക്ക്. കൺസോളിലെ ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരം ഐക്കണിന് ഇത് ആവശ്യമാണ്.

ഘട്ടം 7. പ്ലഗിൻ സജീവമാക്കുക

പ്ലഗിനും പ്രെസ്റ്റോയും സജീവമാക്കുക, നിങ്ങൾക്ക് ഒരു പുതിയ ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരമുണ്ട്, അതിൽ ഒരു ടെക്‌സ്‌റ്റ് എഡിറ്റർ, പോസ്റ്റ്, ഇമേജ് മാനേജ്‌മെന്റ്, കമന്റുകൾ, ഇഷ്‌ടാനുസൃത ഫീൽഡ് എഡിറ്റർ എന്നിവയുണ്ട്.

ഘട്ടം 8: ഒരു പുതിയ എൻട്രി ചേർക്കുക

ക്ലിക്ക് ചെയ്യുക പുതിയത് ചേർക്കുകഇഷ്‌ടാനുസൃത പോസ്റ്റ് ടൈപ്പ് എഡിറ്ററിലേക്ക് പോകാൻ. എൻട്രിക്കായി സിനിമയുടെ പേര്, അവലോകനം, ലഘുചിത്രം എന്നിവ എഴുതുക.

ഘട്ടം 9: പ്രസിദ്ധീകരിക്കൽ

നിങ്ങളുടെ പോസ്റ്റ് പ്രസിദ്ധീകരിച്ച് ക്ലിക്ക് ചെയ്യുക മൂവി റിവ്യൂ കാണുകസൃഷ്ടിച്ച സിനിമാ അവലോകനം കാണാൻ.

കസ്റ്റം പോസ്റ്റ് തരങ്ങൾക്കായി മെറ്റാ ബോക്സ് ഫീൽഡുകൾ സൃഷ്ടിക്കുന്നു

മെറ്റാ ബോക്‌സ് എഞ്ചിൻ WordPress-ന്റെ ബിൽറ്റ്-ഇൻ മെറ്റാ ബോക്‌സ് സിസ്റ്റത്തിന്റെ സഹായം സ്വീകരിക്കുകയും എഡിറ്ററിൽ ആവശ്യമായ ഡിഫോൾട്ട് ഇഷ്‌ടാനുസൃത ഫീൽഡുകൾ ഇല്ലാതെ ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരങ്ങൾക്ക് ആവശ്യമായ ഫീൽഡുകൾ ചേർക്കാൻ നിങ്ങളെ സഹായിക്കുകയും ചെയ്യുന്നു.

ഘട്ടം 1: ഒരു ഇഷ്‌ടാനുസൃത പ്രവർത്തനം രജിസ്റ്റർ ചെയ്യുക

ഫയൽ തുറക്കുക Movie-Reviews.phpഅടയ്ക്കുന്നതിന് മുമ്പ് ഇനിപ്പറയുന്ന കോഡ് ചേർക്കുക PHPടാഗ്. വേർഡ്പ്രസ്സ് അഡ്മിൻ ഇന്റർഫേസ് സന്ദർശിക്കുമ്പോൾ വിളിക്കപ്പെടുന്ന ഒരു ഫംഗ്ഷൻ ഇത് രജിസ്റ്റർ ചെയ്യുന്നു.

Add_action("admin_init", "my_admin");

ഘട്ടം 2: ഒരു ഇഷ്‌ടാനുസൃത പ്രവർത്തനം നടപ്പിലാക്കുക

ഫംഗ്ഷൻ എക്സിക്യൂഷൻ ചേർക്കുക എന്റെ_അഡ്മിൻ, അത് മെറ്റാ ബ്ലോക്കുകൾ രജിസ്റ്റർ ചെയ്യുകയും അവയെ ഒരു ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരവുമായി ബന്ധപ്പെടുത്തുകയും ചെയ്യുന്നു സിനിമ_അവലോകനങ്ങൾ.

ഫംഗ്‌ഷൻ my_admin() ( add_meta_box("movie_review_meta_box", "Movie_review_meta_box", "display_movie_review_meta_box", "movie_reviews", "normal", "high"); )

ഇവിടെയാണ് ചടങ്ങ് add_meta_boxഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരങ്ങളിലേക്ക് മെറ്റാ ബ്ലോക്കുകൾ ചേർക്കാൻ ഉപയോഗിക്കുന്നു.

ഗുണവിശേഷങ്ങൾ:

  • മൂവി_റിവ്യൂ_മെറ്റാ_ബോക്സ്- ആവശ്യമായ HTML ആട്രിബ്യൂട്ട് ഐഡി.
  • മൂവി റിവ്യൂ വിശദാംശങ്ങൾ- മെറ്റാ ബ്ലോക്കിന്റെ മുകളിൽ ടെക്സ്റ്റ് ദൃശ്യമാണ്.
  • display_movie_review_meta_box- മെറ്റാ ബ്ലോക്കിന്റെ ഉള്ളടക്കങ്ങൾ പ്രദർശിപ്പിക്കുന്ന ഒരു കോൾബാക്ക്.
  • സിനിമ_അവലോകനങ്ങൾമെറ്റാ ബ്ലോക്ക് ദൃശ്യമാകുന്ന ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരത്തിന്റെ പേരാണ്.
  • സാധാരണ- എഡിറ്റിംഗ് ബ്ലോക്ക് പ്രദർശിപ്പിക്കേണ്ട പേജിന്റെ ഭാഗം നിർവചിക്കുന്നു.
  • ഉയർന്ന- ബ്ലോക്കുകൾ പ്രദർശിപ്പിക്കുന്ന സന്ദർഭത്തിൽ മുൻഗണന നിശ്ചയിക്കുന്നു.

ഘട്ടം 3: display_movie_review_meta_box ഫംഗ്‌ഷൻ എക്‌സിക്യൂട്ട് ചെയ്യുക

ID, "movie_director", true)); $movie_rating = intval(get_post_meta($movie_review->ID, "movie_rating", true)); ?>
സിനിമാ സംവിധായകൻ
മൂവി റേറ്റിംഗ്

ഈ കോഡ് മെറ്റാ ബ്ലോക്കിന്റെ ഉള്ളടക്കങ്ങൾ പ്രദർശിപ്പിക്കുന്നു. എഡിറ്ററിൽ പ്രദർശിപ്പിച്ചിരിക്കുന്ന ഓരോ മൂവി റിവ്യൂവിന്റെയും വിവരങ്ങൾ അടങ്ങുന്ന ഒരു ഒബ്ജക്റ്റ് വേരിയബിൾ ഞങ്ങൾ ഇവിടെ ഉപയോഗിച്ചിട്ടുണ്ട്. ഈ വസ്തു ഉപയോഗിച്ച് നമുക്ക് ലഭിച്ചു ഐഡിറെക്കോർഡ് ചെയ്യുകയും ബന്ധപ്പെട്ട ഡയറക്ടറുടെ പേരും റേറ്റിംഗും ലഭിക്കുന്നതിന് ഡാറ്റാബേസിൽ അന്വേഷിക്കാൻ അത് ഉപയോഗിച്ചു, ഇത് സ്ക്രീനിൽ ഫീൽഡുകൾ പ്രദർശിപ്പിക്കുന്നതിന് കാരണമായി. ഒരു പുതിയ എൻട്രി ചേർക്കുമ്പോൾ, get_post_metaഒരു ശൂന്യമായ സ്ട്രിംഗ് നൽകുന്നു, ഇത് മെറ്റാ ബ്ലോക്കിൽ ശൂന്യമായ ഫീൽഡുകൾ പ്രദർശിപ്പിക്കുന്നതിന് കാരണമാകുന്നു.

ഘട്ടം 4: സേവ് പോസ്റ്റ് ഫംഗ്‌ഷൻ രജിസ്റ്റർ ചെയ്യുക

add_action("save_post", "add_movie_review_fields", 10, 2);

റെക്കോർഡുകൾ ഡാറ്റാബേസിൽ സേവ് ചെയ്യുമ്പോൾ ഈ ഫംഗ്ഷൻ വിളിക്കുന്നു.

ഘട്ടം 5. add_movie_review_fields ഫംഗ്‌ഷനിലേക്ക് വിളിക്കുക

ഫംഗ്‌ഷൻ add_movie_review_fields($movie_review_id, $movie_review) ( // എങ്കിൽ ($movie_review->post_type == "movie_reviews") ( // പോസ്റ്റ് ഡാറ്റയിൽ ഉണ്ടെങ്കിൽ (isset($) പോസ്റ്റ് മെറ്റാ ടേബിളിൽ ഡാറ്റ സംഭരിക്കുക _POST["movie_review_director_name"]) && $_POST["movie_review_director_name"] != "") ( update_post_meta($movie_review_id, "movie_director", $_POST["movie_review_director_name"]et); ]) && $_POST["movie_review_rating"] != "") ( update_post_meta($movie_review_id, "movie_rating", $_POST["movie_review_rating"]); ) )

അഡ്മിൻ പാനലിൽ നിന്ന് എൻട്രികൾ സംരക്ഷിക്കപ്പെടുകയോ ഇല്ലാതാക്കുകയോ ചെയ്യുമ്പോൾ ഈ ഫംഗ്ഷൻ നടപ്പിലാക്കുന്നു. ഇവിടെ, ഒരു ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരം ആണോ എന്ന് കാണാൻ ലഭിച്ച പോസ്റ്റ് ഡാറ്റ തരം പരിശോധിച്ച ശേഷം, അത് മെറ്റാ ബോക്‌സ് ഘടകങ്ങളിൽ മൂല്യങ്ങൾ അറ്റാച്ച് ചെയ്‌തിട്ടുണ്ടോ എന്ന് പരിശോധിക്കുകയും ഒടുവിൽ മൂല്യങ്ങൾ ആ ഫീൽഡുകളിലേക്ക് സംഭരിക്കുകയും ചെയ്യുന്നു.

ഘട്ടം 6: സാധാരണ കസ്റ്റം ഫീൽഡുകൾ പ്രവർത്തനരഹിതമാക്കുക

ഒരു ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരം സൃഷ്‌ടിക്കുമ്പോൾ ഞങ്ങൾ ഒരു ഫംഗ്‌ഷൻ നിർവചിച്ചു create_movie_review. ഘടകം നീക്കം ചെയ്യുക കസ്റ്റം-ഫീൽഡുകൾശ്രേണിയിൽ നിന്ന് പിന്തുണയ്ക്കുന്നുകാരണം അത് ഇനി ആവശ്യമില്ല. ഇപ്പോൾ നിങ്ങൾ ഫയൽ സേവ് ചെയ്ത് എഡിറ്റർ തുറക്കുകയാണെങ്കിൽ സിനിമാ അവലോകനങ്ങൾ, വിളിക്കപ്പെടുന്ന മെറ്റാ ബ്ലോക്കിലെ രണ്ട് ഫീൽഡുകൾ നിങ്ങൾ ശ്രദ്ധിക്കും സിനിമാ രചയിതാവ്ഒപ്പം മൂവി റേറ്റിംഗ്. നിങ്ങൾക്ക് അതേ രീതിയിൽ മറ്റ് ഘടകങ്ങൾ ചേർക്കാൻ കഴിയും.

ഒരു ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരത്തിനായി ഒരു ഇഷ്‌ടാനുസൃത ടെംപ്ലേറ്റ് സൃഷ്‌ടിക്കുക

ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരം ഡാറ്റ പ്രദർശിപ്പിക്കുന്നതിനുള്ള ശരിയായ മാർഗം ഓരോ ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരത്തിനും ഇഷ്‌ടാനുസൃത ടെംപ്ലേറ്റുകൾ ഉപയോഗിക്കുക എന്നതാണ്. ഒരു ഇഷ്‌ടാനുസൃത പോസ്‌റ്റ് തരം ഉപയോഗിച്ച് ചേർത്ത എല്ലാ മൂവി അവലോകനങ്ങളും പ്രദർശിപ്പിക്കുന്ന ഒരു ടെംപ്ലേറ്റ് ഇവിടെ സൃഷ്‌ടിക്കേണ്ടതുണ്ട് മൂവി റിവ്യൂ.

ഘട്ടം 1. ടെംപ്ലേറ്റിനായി ഒരു ഫംഗ്ഷൻ രജിസ്റ്റർ ചെയ്യുക

ഫയൽ തുറക്കുക Movie-Reviews.phpക്ലോസിംഗ് ടാഗിന് മുമ്പ് ചേർക്കുക PHPഇനിപ്പറയുന്ന കോഡ്. വേർഡ്പ്രസ്സ് അഡ്മിൻ ഇന്റർഫേസ് സന്ദർശിക്കുമ്പോൾ വിളിക്കേണ്ട ഒരു ഫംഗ്ഷൻ ഇത് രജിസ്റ്റർ ചെയ്യും.

Add_filter("template_include", "include_template_function", 1);

ഘട്ടം 2. ഫംഗ്ഷൻ എക്സിക്യൂട്ട് ചെയ്യുക

function include_template_function($template_path) ( if (get_post_type() == "movie_reviews") ( (is_single()) ( // ആദ്യം തീമിൽ ഫയൽ നിലവിലുണ്ടോ എന്ന് പരിശോധിക്കുന്നു, // അല്ലാത്തപക്ഷം ($) എങ്കിൽ പ്ലഗിനിൽ നിന്ന് ഫയൽ സേവിക്കുക theme_file = locate_template(array ("single-movie_reviews.php"))) ($template_path = $theme_file; ) വേറെ ($template_path = plugin_dir_path(__FILE__) . "/single-movie_reviews) $) ടെംപ്ലേറ്റ്.php"; )

ഒരു പാറ്റേൺ തിരയുന്ന കോഡ് ഇതാ സിംഗിൾ-(പോസ്റ്റ്-ടൈപ്പ്-നെയിം).phpനിലവിലെ തീം ഫോൾഡറിൽ. അത് അവിടെ ഇല്ലെങ്കിൽ, പ്ലഗിന്റെ ഭാഗമായി ഞങ്ങൾ നൽകിയ ടെംപ്ലേറ്റിനായുള്ള പ്ലഗിൻ ഫോൾഡറിൽ അത് കാണുന്നു. ഹുക്ക് ടെംപ്ലേറ്റ്_ഉൾപ്പെടുന്നുസാധാരണ സ്വഭാവം മാറ്റാനും ഒരു പ്രത്യേക പാറ്റേൺ പ്രയോഗിക്കാനും ഉപയോഗിച്ചു.

ഘട്ടം 3: ഒരു ഒറ്റ പേജ് ടെംപ്ലേറ്റ് ഫയൽ സൃഷ്ടിക്കുക

തുറന്ന പ്ലഗിൻ ഫയൽ സംരക്ഷിച്ച ശേഷം, മറ്റൊന്ന് സൃഷ്ടിക്കുക PHPഎന്ന ഫയൽ single-movie_reviews.phpതാഴെ പറയുന്ന കോഡ് അതിൽ ഒട്ടിക്കുക.

"movie_reviews"); $loop = പുതിയ WP_Query($mypost); ?>have_posts()) : $loop->the_post();?>
>
തലക്കെട്ട്:
സംവിധായകൻ:
റേറ്റിംഗ്: ";) വേറെ (എക്കോ" "; } } ?>

ഇവിടെ ഞങ്ങൾ സൃഷ്ടിച്ചു അടിസ്ഥാന പേജ് ടെംപ്ലേറ്റ്ഒരു ലൂപ്പ് ഉപയോഗിക്കുന്നു. ഫംഗ്ഷൻ അന്വേഷണ_പോസ്റ്റുകൾഒരു ഇഷ്‌ടാനുസൃത പോസ്റ്റ് തരത്തിന്റെ ഘടകങ്ങൾ നേടുകയും അവയെ ഒരു ലൂപ്പ് ഉപയോഗിച്ച് പ്രദർശിപ്പിക്കുകയും ചെയ്യുന്നു. തീർച്ചയായും, ഇത് ഒരു അടിസ്ഥാന ലൂപ്പ് മാത്രമാണ്, നിങ്ങൾക്ക് ഇഷ്ടമുള്ളതുപോലെ ഇത് ഉപയോഗിച്ച് കളിക്കാം. നിങ്ങൾക്ക് ഉപയോഗിക്കാനും കഴിയും സി.എസ്.എസ്ഘടകങ്ങൾ ഫോർമാറ്റ് ചെയ്യുന്നതിനുള്ള ശൈലികൾ.

കുറിപ്പ്: നിങ്ങൾ ഇപ്പോൾ സൃഷ്ടിച്ച ടെംപ്ലേറ്റ് ഉപയോഗിച്ച് കൺസോളിൽ നിന്ന് ഒരു പുതിയ പേജ് സൃഷ്ടിക്കേണ്ടതുണ്ട്.

ഘട്ടം 4. ചിത്രങ്ങൾ

നിങ്ങൾ രണ്ട് ഐക്കൺ ഇമേജുകൾ സംരക്ഷിക്കേണ്ടതുണ്ട് 32 x 32 pxനിങ്ങളുടെ പ്ലഗിൻ ഫോൾഡറിൽ. അവർക്ക് പേരിടുക icon.pngഒപ്പം grey.png. അത്രയേയുള്ളൂ, ഇപ്പോൾ സിനിമാ അവലോകനങ്ങൾ തീയതി പ്രകാരം അടുക്കി ഒരു പ്രത്യേക പേജിൽ പ്രദർശിപ്പിക്കുന്നു.

ഭാവിയിൽ, നിങ്ങളുടെ സ്വന്തം ഇഷ്‌ടാനുസൃത തരങ്ങളുടെ കൂടുതൽ സവിശേഷതകൾ ഞാൻ വിവരിക്കും, ഉദാഹരണത്തിന്: ആർക്കൈവ് പേജുകൾ സൃഷ്‌ടിക്കുക, ഇഷ്‌ടാനുസൃത ടാക്‌സോണമികൾ സൃഷ്‌ടിക്കുക, ഇഷ്‌ടാനുസൃത കോളങ്ങൾ തുടങ്ങിയവ.

ഒരു ദിവസം നിങ്ങളുടേതായ വെബ്‌സൈറ്റോ ബ്ലോഗോ സൃഷ്‌ടിക്കാൻ നിങ്ങൾ തീരുമാനിച്ചു, മാനേജ്‌മെന്റ് സിസ്റ്റത്തിനായി നിങ്ങൾ വേർഡ്പ്രസ്സ് തിരഞ്ഞെടുത്തു... കാലക്രമേണ, നിങ്ങളുടെ സൈറ്റ് കൂടുതൽ കൂടുതൽ വായിക്കാൻ കഴിയുന്നതായി മാറി, കൂടുതൽ ജനപ്രീതിക്കായി നിങ്ങൾ ഒരു ചെറിയ പ്രവർത്തനം ചേർക്കേണ്ടതുണ്ടെന്ന് നിങ്ങൾ മനസ്സിലാക്കി. സൈറ്റിലേക്ക് അല്ലെങ്കിൽ ആ പ്രവർത്തനം ചിലത് ഓട്ടോമേറ്റ് ചെയ്യുക.

നിങ്ങൾ വേർഡ്പ്രസ്സ് പ്ലഗിന്നുകളുടെ "വെയർഹൗസിൽ" പോയി നിങ്ങൾക്ക് ആവശ്യമുള്ള പ്ലഗിൻ അവിടെ ഇല്ലെന്ന് കണ്ടെത്തുക. എന്തുചെയ്യും? ഞാൻ എന്ത് ചെയ്യണം? PHP, ലേഔട്ട് എന്നിവയിലെ പ്രോഗ്രാമിംഗിന്റെ അടിസ്ഥാനകാര്യങ്ങൾ നിങ്ങൾക്ക് അൽപ്പമെങ്കിലും പരിചിതമാണെങ്കിൽ, അത് നിങ്ങൾക്ക് ബുദ്ധിമുട്ടുള്ള കാര്യമല്ല. WordPress-നായി സ്വയം ഒരു പ്ലഗിൻ എഴുതുക.

ഇപ്പോൾ നമ്മുടെ പ്ലഗിൻ തയ്യാറാക്കാൻ "അടുക്കള" യിലേക്ക് പോകാം.

പി.എസ്. നിങ്ങൾക്ക് php, ലേഔട്ട് എന്നിവയിൽ അറിവില്ലെങ്കിൽ... വിഷമിക്കേണ്ട, ആവശ്യമായ പ്രവർത്തനക്ഷമത നിങ്ങൾക്ക് എഴുതാൻ ആരോടെങ്കിലും ആവശ്യപ്പെടുക :)

നിങ്ങൾ ഒരു പ്ലഗിൻ എഴുതാൻ തുടങ്ങുന്നതിനുമുമ്പ്, നിങ്ങൾ വേർഡ്പ്രസ്സ് ഡോക്യുമെന്റേഷൻ പരിശോധിക്കേണ്ടതുണ്ട്, അത് പ്ലഗിനുകൾ എഴുതുന്നതിനുള്ള അടിസ്ഥാന തത്വങ്ങളും ചില കോഡ് ഉദാഹരണങ്ങളും വിവരിക്കുന്നു.

ഞാൻ ഈ വിവരങ്ങൾ തനിപ്പകർപ്പാക്കില്ല, പക്ഷേ നേരിട്ട് കോഡ് എഴുതുന്നതിലേക്ക് പോകും.

നിങ്ങളുടെ സൈറ്റിനെക്കുറിച്ചുള്ള അവലോകനങ്ങൾ സംരക്ഷിക്കാനും പ്രദർശിപ്പിക്കാനും നിങ്ങളെ അനുവദിക്കുന്ന ഒരു ലളിതമായ പ്ലഗിൻ എഴുതാം. തീർച്ചയായും, അത്തരം പ്ലഗിനുകൾ ഇതിനകം നിലവിലുണ്ട്, പക്ഷേ ഇത് ഒരു ഉദാഹരണമായി മികച്ചതായിരിക്കും.

ഞങ്ങളുടെ പ്ലഗിന്നിനായി ഒരു അദ്വിതീയ നാമം കൊണ്ടുവരിക എന്നതാണ് ഞങ്ങൾ ആദ്യം ചെയ്യേണ്ടത് - “ AdvUserReviews«.

അടുത്തതായി, നിങ്ങളുടെ സൈറ്റിന്റെ "/wp-content/plugins/" എന്ന ഡയറക്ടറിയിൽ ഞങ്ങൾ ഒരു പുതിയ ഡയറക്ടറി "advuserreviews" സൃഷ്ടിക്കും. അതിൽ നമ്മൾ "advuserreviews.php" എന്ന ഫയൽ സൃഷ്ടിക്കും. പൊതുവായ സമാരംഭത്തിന് ഉത്തരവാദിയാകുന്ന പ്രധാന ഫയൽ ഇതായിരിക്കും. (ഫയലുകൾക്കായി UTF-8 എൻകോഡിംഗ് ഉപയോഗിക്കുന്നതാണ് ഉചിതം).

ഫയലിന്റെ തുടക്കത്തിൽ തന്നെ നിങ്ങൾ പ്ലഗിനെക്കുറിച്ചുള്ള അടിസ്ഥാന വിവരങ്ങൾ വ്യക്തമാക്കണം

ഇപ്പോൾ, നിങ്ങൾ നിയന്ത്രണ പാനലിലേക്ക് പോയാൽ, സിസ്റ്റം ഒരു പുതിയ പ്ലഗിൻ കണ്ടെത്തി അത് സജീവമാക്കുന്നതിനുള്ള ഓഫറുകൾ നിങ്ങൾക്ക് കാണാൻ കഴിയും. എന്നാൽ ഇത് ചെയ്യാൻ ഇതുവരെ വളരെ നേരത്തെ തന്നെ.

ഞങ്ങൾ ഞങ്ങളുടെ പുതിയ പ്ലഗിൻ OOP ശൈലിയിൽ എഴുതുകയും എല്ലാ ഡാറ്റ പ്രോസസ്സിംഗും ഒരു ഫയലിൽ സ്ഥിതിചെയ്യുകയും ചെയ്യും. ഫയലിന്റെ പ്രധാന അസ്ഥികൂടം ഉണ്ടാക്കാം.

// നേരിട്ടുള്ള കോൾ നിർത്തുകയാണെങ്കിൽ (preg_match("#" . അടിസ്ഥാനനാമം(__FILE__) . "#", $_SERVER["PHP_SELF"])) ("നിങ്ങൾക്ക് ഈ പേജിലേക്ക് നേരിട്ട് വിളിക്കാൻ അനുവാദമില്ല."); ) എങ്കിൽ (!class_exists("AdvUserReviews")) ( ക്ലാസ് AdvUserReviews ( // ആന്തരിക ഡാറ്റ സംഭരിക്കുന്നു പൊതു $data = അറേ(); // ഒബ്ജക്റ്റ് കൺസ്ട്രക്റ്റർ // പ്രധാന വേരിയബിളുകൾ ആരംഭിക്കുന്നു AdvUserReviews() ( ) ) ആഗോള $rprice; $rprice = പുതിയ AdvUserReviews();

ഇനി നമുക്ക് ഒബ്ജക്റ്റ് കൺസ്ട്രക്റ്ററിലേക്ക് ഇനിപ്പറയുന്ന കോഡ് ചേർക്കാം:

ഫംഗ്ഷൻ AdvUserReviews() ( ആഗോള $wpdb; // ഞങ്ങളുടെ പ്ലഗിൻ DEFINE ("AdvUserReviews", true); // ഞങ്ങളുടെ പ്ലഗിന്റെ ഫയൽ നാമം $this->plugin_name = plugin_basename(__FILE__); // URL വിലാസം ഞങ്ങളുടെ പ്ലഗിൻ $ this->plugin_url = trailingslashit(WP_PLUGIN_URL."/".dirname(plugin_basename(__FILE__))); // ഞങ്ങളുടെ അവലോകനങ്ങൾ സംഭരിക്കുന്നതിനുള്ള പട്ടിക // $wpdb വേരിയബിൾ ആഗോളതലത്തിൽ പ്രഖ്യാപിക്കണം $this->tbl_adv_reviews "adv_reviews"; register_deactivation_hook($this->plugin_name, array (&$this, "deactivate")); // ഒരു പ്ലഗിൻ അൺഇൻസ്റ്റാളുചെയ്യുമ്പോൾ നടപ്പിലാക്കുന്ന പ്രവർത്തനം register_uninstall_hook($this->plugin_name, array(&$this, "uninstall")); )

ഒബ്ജക്റ്റ് കൺസ്ട്രക്റ്ററിൽ ഞങ്ങൾ 3 "ഹുക്കുകൾ" അല്ലെങ്കിൽ "ഹുക്കുകൾ" ഉപയോഗിക്കുന്നു (അതെന്താണ്?): രജിസ്റ്റർ_ആക്ടിവേഷൻ_ഹുക്ക്, register_deactivation_hookഒപ്പം register_uninstall_hook- ഇവ യഥാക്രമം പ്ലഗിൻ സജീവമാക്കുകയും നിർജ്ജീവമാക്കുകയും ഇല്ലാതാക്കുകയും ചെയ്യുമ്പോൾ നിർവ്വഹിക്കുന്ന പ്രവർത്തനങ്ങളാണ്.

ഇനി നമുക്ക് ഈ പ്രവർത്തനങ്ങൾ നേരിട്ട് നടപ്പിലാക്കാം.

/** * പ്ലഗിൻ സജീവമാക്കുക */ ഫംഗ്‌ഷൻ സജീവമാക്കുക() ( ആഗോള $wpdb; require_once(ABSPATH . "wp-admin/upgrade-functions.php"); $table = $this->tbl_adv_reviews; // mysql പതിപ്പ് നിർണ്ണയിക്കുക if ( version_compare(mysql_get_server_info(), "4.1.0", ">=")) (! ശൂന്യമാണെങ്കിൽ($wpdb->ചാർജറ്റ്)) $charset_collate = "ഡിഫോൾട്ട് ക്യാരക്ടർ സെറ്റ് $wpdb-> ചാർസെറ്റ്"; എങ്കിൽ (! ശൂന്യമായ( $wpdb->collate)) $charset_collate .= "കൊല്ലേറ്റ് $wpdb->കൊളേറ്റ് ചെയ്യുക"; ) // അവലോകനങ്ങൾക്കായുള്ള ഞങ്ങളുടെ പട്ടികയുടെ ഘടന $sql_table_adv_reviews = "പട്ടിക സൃഷ്‌ടിക്കുക `".$wpdb->പ്രിഫിക്‌സ്."adv_reviews` (`ID` INT(10) അൺസൈൻ ചെയ്യാത്ത NULL AUTO_INCREMENT, `review_title` VARCHAR(255) NULL ഡിഫോൾട്ടല്ല "0", `review_text` TEXT NULL അല്ല, `review_date` TIMESTAMP NULL DEFAULT അല്ല V_CHARPRENT_0_നാമം എൽ.എൽ , `review_user_email` VARCHAR(200) NULL, PRIMARY KEY (`ID`))".$charset_collate.";"; // എങ്കിൽ ($wpdb->get_var(""".$table പോലെയുള്ള പട്ടികകൾ കാണിക്കുക .""" ) != $table) ( dbDelta($sql_table_adv_reviews); ) ) /** * പ്ലഗിൻ നിർജ്ജീവമാക്കുക */ ഫംഗ്‌ഷൻ നിർജ്ജീവമാക്കുക() ( ശരിയാക്കുക; ) /** * ഒരു പ്ലഗിൻ നീക്കംചെയ്യുന്നു */ ഫംഗ്‌ഷൻ അൺഇൻസ്റ്റാൾ() ( ആഗോള $wpdb; $wpdb->അന്വേഷം("ഉണ്ടെങ്കിൽ പട്ടിക ഡ്രോപ്പ് ചെയ്യുക ($wpdb->പ്രിഫിക്‌സ്)adv_reviews"); )

വേരിയബിൾ $wpdbഡാറ്റാബേസിലേക്കുള്ള അന്വേഷണങ്ങളുടെ ഉത്തരവാദിത്തം. ഫംഗ്ഷൻ dbDeltaനിലവിലെ ടേബിൾ ഘടന പാഴ്‌സ് ചെയ്യുന്നു, ആവശ്യമുള്ള പട്ടിക ഘടനയുമായി താരതമ്യം ചെയ്യുന്നു, കൂടാതെ ആവശ്യാനുസരണം പട്ടിക കൂട്ടിച്ചേർക്കുകയോ പരിഷ്‌ക്കരിക്കുകയോ ചെയ്യുന്നു.

അതനുസരിച്ച്, പ്ലഗിൻ സജീവമാകുമ്പോൾ, അവലോകനങ്ങൾ സംഭരിക്കുന്നതിന് ഒരു പട്ടിക ഘടന സൃഷ്ടിക്കപ്പെടുന്നു. പ്ലഗിൻ നിർജ്ജീവമാകുമ്പോൾ, ഒരു പ്രവർത്തനവും സംഭവിക്കുന്നില്ല, പക്ഷേ അത് ഇല്ലാതാക്കുമ്പോൾ, ഞങ്ങൾ ഞങ്ങളുടെ പട്ടിക ഇല്ലാതാക്കുന്നു. സോഴ്സ് കോഡിൽ നിന്ന് പ്രവർത്തനങ്ങൾ കൂടുതൽ വിശദമായി മനസ്സിലാക്കാം.

പുതിയ പ്ലഗിന്റെ അടിസ്ഥാന ഘടന തയ്യാറാണ്. ഇപ്പോൾ നമ്മൾ ഫങ്ഷണൽ ഭാഗം എഴുതാൻ തുടങ്ങണം. ഇത് ചെയ്യുന്നതിന്, ഞങ്ങൾ ക്ലാസ് കൺസ്ട്രക്റ്ററിലേക്ക് കോഡിന്റെ ഇനിപ്പറയുന്ന വരികൾ ചേർക്കേണ്ടതുണ്ട്:

// നമ്മൾ അഡ്മിനിൽ ആണെങ്കിൽ. ഇന്റർഫേസ് if (is_admin()) ( // ശൈലികളും സ്ക്രിപ്റ്റുകളും ചേർക്കുക add_action("wp_print_scripts", array(&$this, "admin_load_scripts")); add_action("wp_print_styles", array(&$this, "admin_load_styles")); // പ്ലഗിൻ add_action-ന് ഒരു മെനു ചേർക്കുക("admin_menu", array(&$this, "admin_generate_menu")); ) വേറെ ( // ശൈലികളും സ്ക്രിപ്റ്റുകളും ചേർക്കുക add_action("wp_print_scripts", array(&$this, "site_load_scripts" ) ; add_action("wp_print_styles", array(&$this, "site_load_styles")); add_shortcode("show_reviews", array (&$this, "site_show_reviews")); )

കോഡിന്റെ ഈ വിഭാഗം കൂടുതൽ വിശദമായി നോക്കാം. അഡ്മിനിസ്ട്രേഷൻ പാനലിൽ നിന്ന് തുടങ്ങാം.
പ്രവർത്തനം " ആണ്_അഡ്മിൻ» ഞങ്ങൾ നിലവിൽ ഏത് മോഡിലാണ് പ്രവർത്തിക്കുന്നതെന്ന് പരിശോധിക്കുന്നു - വെബ്‌സൈറ്റിലോ നിയന്ത്രണ പാനലിലോ.
അടുത്തതായി, ഫംഗ്ഷനുകൾക്കായി നിരവധി കൊളുത്തുകൾ ഉപയോഗിക്കുന്നു:

  • wp_print_scripts- ആവശ്യമായ ജാവാസ്ക്രിപ്റ്റ് ഫയലുകൾ ചേർക്കുക
  • wp_print_styles- ആവശ്യമായ ശൈലികൾ ചേർക്കുക
  • അഡ്മിൻ_മെനു- നിയന്ത്രണ പാനലിലേക്ക് ഒരു പുതിയ മെനു ചേർക്കുന്നു

ഓരോ ഹുക്കും ഞങ്ങളുടെ ക്ലാസിൽ നടപ്പിലാക്കിയ രീതിയുമായി യോജിക്കുന്നു. അതിൽ ആവശ്യമായ പ്രവർത്തനങ്ങൾ നടത്തുന്നു.
ശൈലികളും സ്ക്രിപ്റ്റുകളും ബന്ധിപ്പിക്കുന്നതിനുള്ള കോഡ് നോക്കാം

/** * മാനേജ്മെന്റ് പേജിന് ആവശ്യമായ സ്ക്രിപ്റ്റുകൾ ലോഡുചെയ്യുന്നു * അഡ്മിനിസ്ട്രേഷൻ പാനലിൽ */ ഫംഗ്ഷൻ admin_load_scripts() ( // സ്ക്രിപ്റ്റുകൾ രജിസ്റ്റർ ചെയ്യുക wp_register_script("advReviewsAdminJs", $this->plugin_url . "js/admin-scripts.js") ; wp_register_script( "jquery", $this->plugin_url . "js/jquery-1.4.2.min.js"); // പേജിലേക്ക് സ്ക്രിപ്റ്റുകൾ ചേർക്കുക wp_enqueue_script("advReviewsAdminJs"); wp_enqueue_script ("jquery"); /** * നിയന്ത്രണ പേജിന് ആവശ്യമായ ശൈലികൾ ലോഡുചെയ്യുന്നു * അഡ്മിനിസ്ട്രേഷൻ പാനലിൽ */ ഫംഗ്ഷൻ admin_load_styles() ( // ശൈലികൾ wp_register_style ("advReviewsAdminCss", $this->plugin_url . "css/admin-style.css") രജിസ്റ്റർ ചെയ്യുക ; // ശൈലികൾ ചേർക്കുക wp_enqueue_style( "advReviewsAdminCss"); )

താഴെ പറയുന്ന പ്രവർത്തനങ്ങൾ ഇവിടെ ഉപയോഗിക്കുന്നു.

ഓരോ പ്രവർത്തനവും യഥാക്രമം "എഡിറ്റ്" - ഒരു അവലോകനം എഡിറ്റ് ചെയ്യുക, "സമർപ്പിക്കുക" - എഡിറ്റ് ചെയ്ത അവലോകനം സംരക്ഷിക്കുകയും "ഇല്ലാതാക്കുക" - ഒരു അവലോകനം ഇല്ലാതാക്കുകയും ചെയ്യുന്ന പാരാമീറ്റർ "ആക്ഷൻ" എന്നിവയെ ആശ്രയിച്ചിരിക്കുന്നു.

"ഡാറ്റ" ഒബ്ജക്റ്റ് പ്രോപ്പർട്ടി വഴി ഡിസ്പ്ലേ പേജുകളുമായുള്ള ഡാറ്റാ കൈമാറ്റം സംഭവിക്കുന്നു. ഈ പേജുകളുടെ സോഴ്സ് കോഡ് ലേഖനത്തിന്റെ അവസാനം ഈ മൊഡ്യൂളിനൊപ്പം ആർക്കൈവിൽ പോസ്റ്റുചെയ്യും. വിഷയം ഇതിനകം വളരെ വലുതായതിനാൽ ഞാൻ അവ ഇവിടെ ചേർക്കില്ല.

ഇവിടെയാണ് ഞങ്ങൾ അഡ്മിനിസ്ട്രേഷൻ പാനൽ പൂർത്തിയാക്കി ഉപയോക്താക്കളിൽ നിന്നുള്ള അവലോകനങ്ങൾ പ്രദർശിപ്പിക്കുന്നതിലേക്കും ചേർക്കുന്നതിലേക്കും നീങ്ങുന്നത്.

ഞങ്ങളുടെ പ്ലഗിൻ എപ്പോൾ വിളിക്കണമെന്ന് വേർഡ്പ്രസ്സിനോട് പറയാൻ, ഞങ്ങൾ "ഷോർട്ട്കോഡ്" രജിസ്റ്റർ ചെയ്യേണ്ടതുണ്ട്, അതാണ് ഞങ്ങളുടെ ക്ലാസിന്റെ കൺസ്ട്രക്റ്ററിൽ ചെയ്തത്. ഇതിനെക്കുറിച്ച് കൂടുതൽ വായിക്കുക.

Add_shortcode("show_reviews", array (&$this, "site_show_reviews"));

ഇപ്പോൾ നിങ്ങൾക്ക് സൈറ്റിന്റെ ഏത് പേജിലും ഇനിപ്പറയുന്ന കോഡ് സ്ഥാപിക്കാൻ കഴിയും, അത് ഞങ്ങൾ വ്യക്തമാക്കിയ ഫംഗ്ഷൻ (രണ്ടാമത്തെ പാരാമീറ്ററായി പാസ്സാക്കിയത്) എക്സിക്യൂട്ട് ചെയ്യാൻ നിർബന്ധിതമാക്കും. ഈ ഫംഗ്‌ഷന്റെ സോഴ്‌സ് കോഡ് ചുവടെയുണ്ട്.

/** * സൈറ്റിലെ അവലോകനങ്ങളുടെ ലിസ്റ്റ് */ പൊതു പ്രവർത്തനം site_show_reviews($atts, $content=null) ( ആഗോള $wpdb; എങ്കിൽ (isset($_POST["ആക്ഷൻ"]) && $_POST["പ്രവർത്തനം"] = = " add-review") ($this->add_user_review(); ) // ഡാറ്റാബേസിൽ നിന്ന് എല്ലാ അവലോകനങ്ങളും തിരഞ്ഞെടുക്കുക $this->data["reviews"] = $wpdb->get_results("SELECT * from `" . $ this- >tbl_adv_reviews . "`", ARRAY_A); ## ഔട്ട്‌പുട്ട് ബഫറിംഗ് ഒബ്_സ്റ്റാർട്ട് പ്രവർത്തനക്ഷമമാക്കുക (); ഉൾപ്പെടുത്തി_ഒന്ന് ("സൈറ്റ്_റിവ്യൂസ്.പിഎച്ച്പി"); ## ഡാറ്റ സ്വീകരിക്കുക $ output = ob_get_contents (); ## ബഫറിംഗ് പ്രവർത്തനരഹിതമാക്കുക ob_end_clean (); $output ; ) സ്വകാര്യ പ്രവർത്തനം add_user_review() ( ആഗോള $wpdb; $inputData = array("review_title" => strip_tags($_POST["review_title"]), "review_text" => strip_tags($_POST["review_text"]) , " review_user_name" => സ്ട്രിപ്പ്_ടാഗുകൾ($_POST["review_user_name"]), "review_user_email" => സ്ട്രിപ്പ്_ടാഗുകൾ($_POST["review_user_email"]),); // സൈറ്റിലേക്ക് ഒരു പുതിയ അവലോകനം ചേർക്കുക $wpdb->തിരുകുക( $this-> tbl_adv_reviews, $inputData); )

തത്വത്തിൽ, ഇവിടെ സങ്കീർണ്ണമായ ഒന്നും തന്നെയില്ല - ഡാറ്റ തിരഞ്ഞെടുക്കുന്നതിന് ഒരു SQL അന്വേഷണം നടത്തുന്നു, എന്നാൽ "ആക്ഷൻ" പാരാമീറ്റർ കടന്നുപോകുകയാണെങ്കിൽ, ആദ്യം ഒരു പുതിയ അവലോകനം ചേർക്കും. എന്നാൽ ഔട്ട്പുട്ട് ബഫറിംഗിൽ ശ്രദ്ധിക്കുന്നത് മൂല്യവത്താണ്. ചേർത്ത പേജിന്റെ ഡാറ്റ ലഭിക്കുന്നതിന് ഇത് ആവശ്യമാണ്.

അത്രയേയുള്ളൂ. ഇപ്പോൾ നമുക്ക് എന്താണ് കിട്ടിയതെന്ന് കാണാം. എ പ്ലഗിൻ, സോഴ്സ് കോഡുകൾ ഡൗൺലോഡ് ചെയ്യുകനിങ്ങൾക്ക് ഇവിടെ കഴിയും.

തീർച്ചയായും, ഇത് ഒരു പ്ലഗിൻ സൃഷ്‌ടിക്കുന്നതിനുള്ള ഒരു ഉദാഹരണം മാത്രമാണ്, എന്നാൽ നിങ്ങൾ ഇത് അൽപ്പം പരിഷ്‌ക്കരിച്ചാൽ ഒരു ലളിതമായ അതിഥി ആപ്പായി ഇത് പ്രവർത്തിക്കും, ഉദാഹരണത്തിന്, ബോട്ടുകളിൽ നിന്നും പേജ്-ബൈ-പേജ് ഔട്ട്‌പുട്ടിൽ നിന്നും സംരക്ഷണം ചേർക്കുന്നു. സന്തോഷകരമായ കോഡിംഗ് :)

വെബ്സൈറ്റിലെ ഫോം:

പ്ലഗിൻ നിയന്ത്രണ പാനൽ:

എഡിറ്റിംഗ് അവലോകനം:

നിങ്ങൾക്ക് ഇതിൽ താൽപ്പര്യമുണ്ടാകാം:




ഞങ്ങൾ ശുപാർശ ചെയ്യുന്നു

വ്യത്യസ്ത രീതികളിൽ സാംസങ് എങ്ങനെ പുനഃസജ്ജമാക്കാം

നിങ്ങൾക്ക് ഒരു സാംസങ് സ്മാർട്ട്ഫോൺ ഉണ്ടോ, അത് വിൽക്കാനോ നൽകാനോ നിങ്ങൾ തീരുമാനിച്ചിട്ടുണ്ടോ? ഒന്നുകിൽ ഫോൺ സിസ്റ്റം അടഞ്ഞുപോയതിനാൽ സാധാരണ ഒപ്റ്റിമൈസേഷൻ പ്രവർത്തിക്കില്ല...