HTML प्रपत्र. WP संस्करण हटा रहा है

हिटमैनप्रो वायरस, स्पाइवेयर, ट्रोजन, रूटकिट और अन्य मैलवेयर का पता लगाता है, पहचानता है और उन्हें हटाता है।

उपयोगिता अपने स्वयं के व्यवहार विश्लेषण और फ़ाइल क्लस्टर परीक्षा इंजन के साथ-साथ सोफोसलैब्स, कैस्परस्की और बिटडेफ़ेंडर एंटीवायरस डेटाबेस का उपयोग करके नवीन क्लाउड स्कैनिंग तकनीक का उपयोग करती है। हिटमैनप्रो स्कैनर सिस्टम प्रदर्शन पर न्यूनतम प्रभाव के साथ संभावित दुर्भावनापूर्ण खतरों का पता लगाता है और उन्हें हटा देता है।

* हिटमैनप्रो एक निःशुल्क एंटीवायरस स्कैनर है। हटाने की सुविधा 30 दिनों के लिए निःशुल्क उपलब्ध है।

हिटमैनप्रो की मुख्य विशेषताएं

क्या आपका एंटीवायरस नवीनतम खतरों से निपट सकता है?

मैलवेयर का नया स्रोत कहीं भी पाया जा सकता है, यहां तक ​​कि विश्वसनीय साइटों पर भी। ये खतरे एंटीवायरस सुरक्षा से बचने के लिए विभिन्न तकनीकों का उपयोग कर सकते हैं। हिटमैनप्रो को एंटीवायरस सुरक्षा के साथ काम करने के लिए डिज़ाइन किया गया है और शून्य-दिन के खतरों को खोजने और बेअसर करने के लिए गहन व्यवहार विश्लेषण का उपयोग करता है - आधुनिक खतरे जो पता लगाने से बचने की कोशिश करते हैं।

व्यवहारिक पहचान + सामूहिक अनुभव

मैलवेयर की पहचान करने के लिए हस्ताक्षर परिभाषाओं का उपयोग करने के बजाय, हिटमैनप्रो दुर्भावनापूर्ण गतिविधि के लिए प्रत्येक फ़ाइल के व्यवहार की जांच करता है। यह दृष्टिकोण हिटमैनप्रो को नवीनतम घातक मैलवेयर और वायरस को पहचानने से पहले ब्लॉक करने की क्षमता देता है। हिटमैनप्रो नए खतरों के अधिक रूपों का पता लगाने और उन्हें उनके स्रोत पर वापस ढूंढने के लिए सोफोसलैब्स मैलवेयर डेटाबेस से भी जुड़ता है।

कोई स्थापना नहीं

हिटमैनप्रो 12 मेगाबाइट लेता है और उसे इंस्टॉलेशन की आवश्यकता नहीं होती है। प्रोग्राम को सीधे आपके डेस्कटॉप, यूएसबी ड्राइव, सीडी/डीवीडी या रिमोट स्टोरेज से लॉन्च किया जा सकता है। भले ही आपका एंटीवायरस मैलवेयर या रैंसमवेयर द्वारा नियंत्रित हो, हिटमैनप्रो सही ढंग से काम करेगा और खतरों का पता लगाने और उन्हें हटाने में सक्षम होगा।

व्यापक बहाली

हिटमैनप्रो आपको ऑपरेटिंग सिस्टम में पैर जमाने वाले लगातार खतरों को हटाने की अनुमति देता है और पुन: संक्रमण के प्रयासों को रोकते हुए संक्रमित सिस्टम संसाधनों को सुरक्षित, मूल संस्करणों से बदल देता है।

परीक्षण पुरस्कार

$_SESSION सरणी के माध्यम से डेटा स्थानांतरित करने की अनुमति एक बार दी जाती है; स्थानांतरित डेटा तुरंत हटा दिया जाता है। यह उपयोगी हो सकता है, उदाहरण के लिए, जब किसी अन्य मॉड्यूल में दर्ज किए गए डेटा को किसी फॉर्म में "वापस" किया जाता है।

यह अच्छा है जब सभी सेवा कार्यों को एक मॉड्यूल में संयोजित किया जाता है, जिसे मुख्य मॉड्यूल require_once निर्देश के माध्यम से जोड़ते हैं। हम सेवा कार्यों के अपने मॉड्यूल को function.php कहेंगे और, उल्लिखित ट्रिमॉल और मैजिक विधियों के अलावा, हम वहां निम्नलिखित फ़ंक्शन शामिल करेंगे:

  • read() - वर्तमान डेटाबेस को पढ़ेगा और रिकॉर्ड्स की एक श्रृंखला लौटाएगा;
  • लिखें($a) - एक फ़ाइल में रिकॉर्ड $a की एक सरणी लिखेंगे;
  • get_index_by_name ($a,$name) - $name नाम से संबंधित प्रविष्टि की खोज करेगा और यदि प्रविष्टि नहीं मिलती है तो उसका नंबर (शून्य से) या मान -1 लौटाएगा। यह नई प्रविष्टि जोड़ने और मौजूदा प्रविष्टि को संपादित करने के बीच अंतर करने के लिए उपयोगी है।

इसके अलावा, फ़ंक्शन फ़ाइल में कॉन्फ़िगरेशन फ़ाइल शामिल होगी और सत्र शुरू होगा - इन क्षमताओं की आवश्यकता इसे कनेक्ट करने वाले किसी भी मॉड्यूल को हो सकती है।

Function.php फ़ाइल

ध्यान दें कि रीड फ़ंक्शन अतिरिक्त रूप से खाली स्ट्रिंग्स से रिकॉर्ड सरणी को फ़िल्टर करता है (बस मामले में, सामान्य तौर पर, उन्हें घटित नहीं होना चाहिए), और ट्रिमॉल पहले किसी भी गैर-खाली स्ट्रिंग को एक ही स्थान (दूसरा preg_replace) के साथ सीमांकक से बदल देगा, और फिर शेष पंक्ति (पहला preg_replace) के आरंभ और अंत में संभावित अतिरिक्त सीमांकक हटा दें।

कोड अनुकूलता के संदर्भ में रीड फ़ंक्शन के साथ एक बारीकियां भी है। चूँकि इसकी एकमात्र पंक्ति में एक अनाम फ़ंक्शन है, इसलिए यह माना जाता है कि 5.3 से कम का PHP संस्करण उपयोग नहीं किया गया है। यदि आवश्यक हो, तो नीचे दिए गए कोड को उस कोड से बदलें जहां फ़िल्टरिंग फ़ंक्शन का नाम दिया गया है या बिल्कुल भी उपयोग नहीं किया गया है, जैसे यहां:

फ़ंक्शन पढ़ा () ($str=@file_get_contents (FILENAME); $a=explode('\n',$str); $a लौटाएं; )

यूनिकोड स्ट्रिंग को लोअरकेस में सही ढंग से कास्ट करना भी महत्वपूर्ण है (कोड में mb_strtolower देखें)। हम यहां लोकेल का उपयोग नहीं करते हैं.

ऐसा लगता है कि मुख्य Index.php फ़ाइल लिखने का समय आ गया है। वह निम्नलिखित कार्यों का समाधान करेगा:

  • एक नई प्रविष्टि जोड़ने के लिए एक फॉर्म प्रदर्शित करें, जिसे add.php मॉड्यूल द्वारा संसाधित किया जाता है;
  • जोड़ने वाले फॉर्म के बगल में हम अतिरिक्त कमांड प्रदर्शित करेंगे - पैरामीटर के बिना एक स्क्रिप्ट को "स्वयं-आह्वान" करके फॉर्म को साफ़ करना (बटन यहां काम नहीं करेगा, क्योंकि यह सर्वर पर डेटा स्थानांतरित नहीं करता है) और रिकॉर्ड सॉर्टिंग तक पहुंचने के लिए एक लिंक मॉड्यूल का नाम sort.php है;
  • संख्यात्मक चर $status के रूप में अन्य मॉड्यूल से अपने काम के परिणाम प्राप्त करें और संबंधित संदेश (सरणी $status_msg) प्रदर्शित करें। शून्य के बराबर $status मान डिफ़ॉल्ट रूप से स्वीकार किया जाएगा, यह प्रोग्राम के संचालन के बारे में एक संक्षिप्त सहायता के आउटपुट से मेल खाता है;
  • यदि डेटाबेस खाली नहीं है, तो उसके रिकॉर्ड दिखाएं और संपादन या हटाने के लिए एक संक्रमण प्रदान करें।

अतिरिक्त बटन और लिंक के साथ तालिका को अधिभारित न करने के लिए, आइए क्लिक करें नाम से edit.php मॉड्यूल का उपयोग करके प्रविष्टि को संपादित करके, और क्लिक करके फ़ील्ड "नंबर" द्वारा del.php मॉड्यूल द्वारा एक प्रविष्टि को हटाने के अनुरूप होगा।

कुछ प्रविष्टियों को जोड़ने पर यह इस प्रकार दिखता है:

स्क्रिप्ट की उपस्थिति "टेक्स्ट फ़ाइल पर मिनी-डीबी"

Index.php फ़ाइल

अब आइए लापता मॉड्यूल पर चलते हैं। ऐसा लगता है कि add.php का काम सरल है - Index.php से $name और $number वेरिएबल प्राप्त करें और उन्हें एक फ़ाइल में लिखें। हालाँकि, मॉड्यूल को यह जांचना होगा कि गैर-रिक्त डेटा उसे पास कर दिया गया है, और उस स्थिति को अलग करने में भी सक्षम होना चाहिए जब डेटाबेस में पहले से मौजूद नाम एक नए रिकॉर्ड की प्रविष्टि से दर्ज किया गया हो (देखें यदि ($id>- 1) ( ... ) अन्यथा ( ... ) कोड में)। बाद के मामले में, प्रविष्टि को हमेशा अंत में जोड़ा जाता है, क्योंकि स्ट्रिंग को वर्णानुक्रम में क्रमबद्ध करने के लिए एक मॉड्यूल होगा।

यह भी महत्वपूर्ण है कि पैरामीटर हैंडलर के माध्यम से "पारित" $नाम स्ट्रिंग पहले से ही ",", जैसे "महत्वपूर्ण" मार्कअप वर्णों से रहित है।< и >, और डेटा फ़ाइल से पढ़ी गई सरणी $a में, सभी पंक्तियाँ "जैसा है" हैं, और यदि प्रसंस्करण के बाद $name 123 में बदल गया है तो 123 नहीं मिलेगा। इसलिए, रिकॉर्ड लुकअप फ़ंक्शन, जिसे हम get_index_by_name कहते हैं, मानक htmlspecialchars_decode फ़ंक्शन (PHP 5.1 के रूप में उपलब्ध) का उपयोग करके एक स्ट्रिंग को उसके मूल रूप में "बैक" में परिवर्तित कर दिया जाता है। उसी रूप में, स्ट्रिंग को $_SESSION सरणी के माध्यम से वापस Index.php पर लौटा दिया जाता है। यह कुछ सुविधा प्रदान करेगा - एक नई प्रविष्टि दर्ज करने के बाद, इसका डेटा फॉर्म में रहेगा और एक और प्रविष्टि दर्ज करना संभव होगा, नाम में थोड़ा अलग ("इवानोव" के बाद "इवानोवा")।

खैर, मॉड्यूल से मॉड्यूल में वापसी बिल्कुल मानक है - मानक हेडर फ़ंक्शन के माध्यम से। याद रखें कि इसका उपयोग केवल तभी किया जा सकता है जब मॉड्यूल ने अभी तक ब्राउज़र में कुछ भी आउटपुट नहीं किया है।

add.php फ़ाइल

अब संपादन के बारे में, इसे edit.php में लागू किया जाएगा। संपादन फॉर्म लगभग जोड़ने वाले फॉर्म के समान ही है, हम फॉर्म को प्रदर्शित करने के लिए एक अलग फ़ंक्शन बनाने में बहुत आलसी थे। इससे भी महत्वपूर्ण बात यह है कि मॉड्यूल स्वयं संपादन फॉर्म के माध्यम से प्रसारित डेटा का एक प्रोसेसर होगा, और इसलिए इसे उस स्थिति से अलग करना होगा जब इसे तब बुलाया जाता है जब उपयोगकर्ता ने "सहेजें" पर क्लिक किया था। आखिरी काम है जांचना

यदि (!empty($_POST["submit"]) && !empty($name) && isset($number) && isset($id)) (

यह निर्धारित करना कि क्या बटन दबाया गया था और सारा डेटा स्थानांतरित हो गया था। दूसरी शाखा -

अन्यथा यदि (isset($a[$id])) (

उस स्थिति के लिए अभिप्रेत है जब $a सरणी में एक प्रविष्टि होती है, जिसकी संख्या स्क्रिप्ट को दी जाती है और इसे संपादित किया जाना चाहिए। प्रविष्टि संख्या एक छिपे हुए HTML फ़ील्ड में संग्रहीत है।

फ़ाइल edit.php

del.php रिकॉर्ड हटाने वाला मॉड्यूल काफी सरल होगा, इसके लिए बस एक वैध रिकॉर्ड $id ($a सरणी में तत्व संख्या) प्राप्त करना है, सरणी से संबंधित तत्व को हटाना है, फ़ाइल को फिर से लिखना है और मुख्य मॉड्यूल पर वापस लौटना है। पृष्ठ।

फ़ाइल del.php

अंत में, sort.php सॉर्टिंग मॉड्यूल एक नई समस्या पेश करेगा - अपरकेस और लोअरकेस अक्षरों के बीच अंतर किए बिना यूनिकोड स्ट्रिंग्स को वर्णानुक्रम में कैसे सॉर्ट करें? मानक सॉर्ट फ़ंक्शन का उपयोग करके "प्रत्यक्ष" सॉर्टिंग शायद ही उपयुक्त है - यह लोअरकेस और अपरकेस अक्षर को अलग-अलग वर्ण मानता है। हमने लोकेल सेट नहीं किया है, विशेषकर इसलिए क्योंकि सभी ऑपरेटिंग सिस्टमों के लिए इसे स्थापित करने के लिए कोई एकल प्रविष्टि फ़ॉर्म नहीं है।

आइए तत्वों की तुलना करने के लिए एक कस्टम फ़ंक्शन के साथ सरणियों को सॉर्ट करने के लिए विभिन्न प्रकार के फ़ंक्शन में से यूसोर्ट चुनने तक खुद को सीमित रखें।

ऐसा लगता है कि एकल-वर्ण यूनिकोड स्ट्रिंग्स की प्रयुक्त "प्रत्यक्ष" तुलना पूरी तरह से सही नहीं है, लेकिन strcmp स्ट्रिंग्स की बाइट-बाय-बाइट तुलना करता है और हमारे लिए उपयुक्त नहीं है, लेकिन सामान्य तौर पर तुलना सही है कोईयूनिकोड में स्ट्रिंग्स एक बहुत ही कठिन कार्य है... रूसी और अंग्रेजी के लिए सिस्टम में मेरे लिए सब कुछ काम करता था, उदाहरण के लिए, सॉर्ट करने के बाद मुझे प्राकृतिक शब्द क्रम मिला, जैसे कि

अब्बा, अवका, अवक्लिट, बस्या, बोबी, बोबिक, बोबिक, बोबीना

फ़ाइल सॉर्ट.php

हमें बस .htaccess नामक फ़ोल्डर में एक फ़ाइल बनानी है, जहां हम डिफ़ॉल्ट एन्कोडिंग को यूनिकोड पर सेट करेंगे और साइट के लिए उद्धरण सेट करने के निर्देशों को इंगित करेंगे, इसलिए...

उसी फ़ोल्डर में, एक खाली (0 बाइट) फ़ाइल data.txt बनाएं (यदि सभी अधिकार कॉन्फ़िगर किए गए हैं तो वैकल्पिक)।

File.htaccess AddDefaultCharset utf-8 php_flag मैजिक_कोट्स_gpc बंद php_flag मैजिक_कोट्स_रनटाइम बंद php_फ्लैग मैजिक_कोट्स_sybase बंद

आप देख सकते हैं कि क्या हुआ और मुझे उन समस्याओं के बारे में बताएं जो आपको मिलीं, मैंने स्क्रिप्ट बहुत जल्दी, 2 चरणों में लिखी, और हो सकता है कि मैंने इसके बारे में कुछ भी नहीं सोचा हो :)

उपयोगी स्निपेट्स (कोड) का संग्रह। किसी थीम को संपादित करते या बनाते समय कोड सामान्य कार्यों के लिए डिज़ाइन किए जाते हैं।

आमतौर पर, यह सारा कोड थीम की function.php फ़ाइल में रखा जाना चाहिए। या, आप एक अलग.php फ़ाइल बना सकते हैं, वहां कोड डाल सकते हैं और फ़ाइल को थीम के function.php से इस तरह कनेक्ट कर सकते हैं:

// स्निपेट कनेक्ट करें require_once "functions-snippets.php";

TinyMCE संपादक के लिए CSS उपस्थिति

स्टाइल फ़ाइल को WordPress TinyMCE संपादक से जोड़ता है। इस तरह हम व्यवस्थापक पैनल में संपादक शैलियाँ सेट कर सकते हैं और किसी पोस्ट को संपादित करते समय देख सकते हैं कि वह सामने वाले भाग में कैसी दिखती है।

// TinyMCE संपादक के लिए शैलियाँ // आपको थीम फ़ोल्डर add_action('current_screen', 'my_theme_add_editor_styles') में एक फ़ाइल 'editor-styles.css' बनाने की आवश्यकता है; फ़ंक्शन my_theme_add_editor_styles() ( add_editor_style("editor-styles.css"); )

लॉगिन पेज के लिए सीएसएस

## लॉगिन पृष्ठ के लिए सीएसएस ## आपको थीम फ़ोल्डर add_action('login_head', 'my_loginCSS') में एक फ़ाइल 'wp-login.css' बनाने की आवश्यकता है; फ़ंक्शन my_loginCSS() (इको "";)

व्यवस्थापक पैनल के लिए सीएसएस

व्यवस्थापक पैनल के सभी पृष्ठों पर एक स्टाइल फ़ाइल शामिल है। इस प्रकार, आप व्यवस्थापक पैनल शैलियों को आसानी से संशोधित और पूरक कर सकते हैं।

## व्यवस्थापक पैनल के लिए सीएसएस शैलियाँ। आपको थीम फ़ोल्डर add_action('admin_enqueue_scripts', 'my_admin_css', 99); में एक फ़ाइल 'wp-admin.css' बनाने की आवश्यकता है; फ़ंक्शन my_admin_css())( wp_enqueue_style('my-wp-admin', get_template_directory_uri() .'/wp-admin.css'); )

फ्रंट एंड से एडमिन बार को हटाना

जब थीम फिक्स्ड (फ़्लोटिंग) ब्लॉक का उपयोग करती है तो एडमिन बार रास्ते में आ सकता है। ऐसे मामलों में, इस पट्टी को हटाना कभी-कभी आसान होता है।

## फ्रंट एंड से एडमिन बार को हटाता है add_filter('show_admin_bar', '__return_false'); ## विजेट समर्थन सक्षम करें। विजेट के लिए एक क्षेत्र जोड़ें यदि(function_exists("रजिस्टर_साइडबार"))( रजिस्टर_साइडबार(सरणी("before_widget" => "", "after_widget" => "", "before_title" => "", "after_title" => "" , )); )

कस्टम मेनू समर्थन सक्रिय करना

मेनू के लिए एक क्षेत्र (स्थान) पंजीकृत करता है और मेनू समर्थन सक्षम करता है। इस कोड को व्यवस्थापक पैनल में स्थापित करने के बाद, कस्टम मेनू बनाना और उन्हें इस कोड द्वारा बनाए गए क्षेत्रों में संलग्न करना संभव होगा। मेनू टेम्पलेट में, इसे wp_nav_menu() फ़ंक्शन द्वारा प्रदर्शित किया जाता है।

## कस्टम मेनू जोड़ें रजिस्टर_एनएवी_मेनस (सरणी ("मुख्य" => "मुख्य मेनू", "in_footer" => "पाद लेख में मेनू",));

पोस्ट और टिप्पणियों के आरएसएस फ़ीड में लिंक जोड़ना

कस्टम पृष्ठभूमि छवि या पृष्ठभूमि ## व्यवस्थापक पैनल से पृष्ठभूमि छवि सेट करने की क्षमता को सक्षम करता है add_theme_support("custom-background");

परिणामस्वरूप, कोड आउटपुट होगा:

बॉडी.कस्टम-पृष्ठभूमि (पृष्ठभूमि-रंग: #bdd96e;)

टेक्स्ट विजेट में शॉर्टकोड शामिल करना

कई प्लगइन्स शॉर्टकोड का उपयोग करते हैं, लेकिन सभी में विजेट नहीं होते हैं। इस मामले में, "टेक्स्ट" विजेट में प्लगइन शॉर्टकोड का उपयोग करना सुविधाजनक होगा।

## "टेक्स्ट" विजेट में शॉर्टकोड if(! is_admin())( add_filter("widget_text", "do_shortcode", 11); )

व्यवस्थापक क्षेत्र में सामग्री फ़ील्ड में डिफ़ॉल्ट रूप से यादृच्छिक पाठ

एक नई प्रविष्टि (पोस्ट या पेज) बनाते समय, कभी-कभी वहां कुछ नोट्स रखना सुविधाजनक होता है, जिसमें बताया जाता है कि कैसे और क्या लिखना है। ऐसा करने के लिए, आप सामग्री में डिफ़ॉल्ट टेक्स्ट सम्मिलित कर सकते हैं:

## संपादक के लिए रैंडम डिफ़ॉल्ट टेक्स्ट add_filter('default_content', 'writing_encouragement_func'); फ़ंक्शन लेखन_प्रोत्साहन_func($content) ( वैश्विक $post_type; // संपादक के लिए पाठ, पोस्ट प्रकार if($post_type == "post")( $array = array("कुछ संदेश", "कुछ संदेश", ); वापसी $ array[ array_rand($array) ]; ) // संपादक के लिए टेक्स्ट, पोस्ट टाइप पेज अन्यथा ($array = array('कुछ संदेश', 'कुछ संदेश'); $array वापस करें[ array_rand($array) ]; ) )

खोज पृष्ठ पर प्रविष्टियों की संख्या बदलना

डिफ़ॉल्ट रूप से, खोज पृष्ठ पृष्ठ पर अन्यत्र प्रविष्टियों की समान संख्या दिखाता है, जैसा कि सेटिंग्स में सेट किया गया है।

यह उदाहरण दिखाता है कि एक पृष्ठ पर 100 रिकॉर्ड कैसे प्रदर्शित करें।

## खोज पृष्ठ पर पोस्ट की मात्रा बदलें - यहां 100 add_action("pre_get_posts", "search_results_per_page_func"); पर सेट करें; फ़ंक्शन search_results_per_page_func($query) ( // खोज पृष्ठ पर क्वेरी if(! is_admin() && $query->is_main_query() && $query->is_search())( $query->set("posts_per_page", 100) ; ) $क्वेरी वापस करें; )

यह निर्धारित करता है कि एक उद्धरण में कितने शब्द होने चाहिए, जो आमतौर पर पोस्ट (श्रेणियां, टैग) के संग्रहीत पृष्ठों पर प्रदर्शित होता है। उद्धरण the_excerpt() फ़ंक्शन द्वारा आउटपुट होता है।

## उद्धरण लंबाई बदलना add_filter("excerpt_length", "custom_excerpt_length_func"); फ़ंक्शन Custom_excerpt_length_func($length) (वापसी 20; // शब्दों की संख्या)

व्यवस्थापक पैनल में प्रोफ़ाइल से फ़ील्ड हटाना: AIM, Yahoo IM, Jabber ## प्रोफ़ाइल से फ़ील्ड हटाता है: AIM, Yahoo IM, Jabber / Google Talk add_filter("user_contactmethods", "remove_contactmethod"); फ़ंक्शन रिमूव_कॉन्टैक्टमेथोड($संपर्कविधि) ( अनसेट($संपर्कविधि["लक्ष्य"]); अनसेट($संपर्कविधि["जैबर"]); अनसेट($संपर्कविधि["yim"]); वापसी $संपर्कविधि; ) प्रोफ़ाइल में फ़ील्ड जोड़ना व्यवस्थापक में: फेसबुक, ट्विटर ## प्रोफ़ाइल में फ़ील्ड जोड़ता है: AIM, Yahoo IM, Jabber / Google Talk add_filter("user_contactmethods", "add_contactmethod"); फ़ंक्शन add_contactmethod($contactmethods) ($contactmethods["twitter"] = "Twitter"; $contactmethods["facebook"] = "Facebook"; return $contactmethods; ) यदि कोई साइडबार है तो टैग में has_sidebar क्लास जोड़ना

इस हैक को काम करने के लिए, थीम टैग को परंपरागत रूप से body_class() टेम्पलेट टैग का उपयोग करने की आवश्यकता होती है।

## यदि कोई साइडबार है तो ``has_sidebar` क्लास को ``टैग में जोड़ना add_filter('body_class', 'has_sidebar_func'); फ़ंक्शन has_sidebar_func($classes)( if(is_active_sidebar("sidebar"))( // एक क्लास जोड़ें $classes = "has_sidebar"; ) $classes वापस करें; )

कंसोल में एक विजेट जोड़ा जा रहा है

कभी-कभी वर्तमान विषय से संबंधित महत्वपूर्ण जानकारी रखने के लिए व्यवस्थापक पैनल कंसोल में एक विजेट जोड़ना उपयोगी हो सकता है।

## एडमिन पैनल में कंसोल में कस्टम विजेट add_action("wp_dashboard_setup", "my_custom_dashboard_widgets"); फ़ंक्शन my_custom_dashboard_widgets() ( wp_add_dashboard_widget("custom_help_widget", "थीम नोट्स", "custom_dashboard_help"); ) फ़ंक्शन कस्टम_डैशबोर्ड_help() ( इको "

"मेरा विषय" विषय में आपका स्वागत है! इस विषय पर कुछ नोट्स यहां दिए गए हैं।";)

हमें यह विजेट मिलता है:

एक टिप्पणी उत्तर स्क्रिप्ट सहित

जब आप "उत्तर" बटन पर क्लिक करते हैं तो यह स्क्रिप्ट टिप्पणी फ़ॉर्म को स्थानांतरित कर देती है।

## टिप्पणी प्रतिक्रिया स्क्रिप्ट को कनेक्ट करना add_action("wp_footer", "enable_threaded_comments"); फ़ंक्शन Enable_threaded_comments())( if(is_singular() && comments_open() && get_option("thread_comments")) wp_enqueue_script("comment-reply"); )

चित्र पोस्ट थंबनेल चालू करें

डिफ़ॉल्ट रूप से, पोस्ट में कोई ब्लॉक नहीं होता है जहां आप पोस्ट थंबनेल सेट कर सकें। ऐसे ब्लॉक को प्रदर्शित करने के लिए, इसे सक्षम किया जाना चाहिए। आपको थंबनेल समर्थन सक्षम करना होगा. यह बहुत सरलता से किया जाता है:

## पोस्ट थंबनेल सक्षम करना add_theme_support('पोस्ट-थंबनेल'); सेट_पोस्ट_थंबनेल_आकार(200, 200, सत्य); // सामान्य पोस्ट थंबनेल

अतिरिक्त मध्यवर्ती थंबनेल आकार बनाना

जब आप कोई छवि अपलोड करते हैं, तो उसके लिए अतिरिक्त आकार - थंबनेल - बनाए जाते हैं। आप आसानी से अपने स्वयं के आयामों को बुनियादी आयामों में जोड़ सकते हैं - मनमाने ढंग से।

## मध्यवर्ती थंबनेल आकार बनाना if(function_exists("add_image_size"))( add_image_size("mysize-horizont", 300, 200, true); add_image_size("mysize-vertical", 400, 500, true); )

पंजीकृत आकार प्राप्त करने के लिए, फ़ंक्शन का उपयोग करें:

RSS फ़ीड में एक थंबनेल जोड़ना

यह कोड RSS फ़ीड के शीर्ष पर एक पोस्ट थंबनेल जोड़ता है।

## RSS फ़ीड में एक थंबनेल जोड़ना add_filter('the_excerpt_rss', 'add_thumbname_to_feed'); //add_filter('the_content_feed', 'add_thumbname_to_feed'); // आमतौर पर इस हुक का उपयोग नहीं किया जाता है, लेकिन यह भी हो सकता है... फ़ंक्शन add_thumbtail_to_feed($content)( $img = get_the_post_thumbnel(null, array(100, 80), array("संरेखण" => "बाएं", " शैली" => "मार्जिन-दाएं:15px;")); $सामग्री = $img . $सामग्री; वापसी $सामग्री; )

किसी टैग में छवियों को लपेटना रद्द करें

सामग्री में

The_content() का उपयोग करके किसी थीम में सामग्री प्रदर्शित करते समय, wpautop() फ़ंक्शन ट्रिगर हो जाता है और परिणामस्वरूप यदि एक अलग लाइन पर है, यह लपेटता है

वे। था बन गया ।

यह उदाहरण दिखाता है कि इस अजीब व्यवहार को कैसे दूर किया जाए।

## ` टैग में छवियों की रैपिंग रद्द करें

`सामग्री में add_filter('the_content', 'remove_img_ptags_func'); फ़ंक्शन हटाएं_img_ptags_func($content)( वापसी preg_replace("/

\s*((?:]+>)?\s* ]+>\s*(?:)?)\s*/i", "\1", $content); ) // IE के लिए html5 स्क्रिप्ट को cdn add_action("wp_head", "IEhtml5_shid_func"); के साथ कनेक्ट करना; फ़ंक्शन IEhtml5_stim_func())( echo ""; // या यदि आपको मुद्रण समर्थन की भी आवश्यकता है // echo ""; )

रिकॉर्ड संशोधनों की अधिकतम संख्या निर्धारित करें

डिफ़ॉल्ट रूप से, रिकॉर्ड संशोधनों की संख्या असीमित है और यह डेटाबेस को अनावश्यक रूप से अव्यवस्थित कर सकता है। संशोधनों को पूरी तरह से अक्षम करना भी सबसे अच्छा समाधान नहीं है, क्योंकि ऐसा होता है कि किसी रिकॉर्ड को संपादित करते समय कुछ गलत हो जाता है और दर्ज किया गया डेटा खो जाता है - काम ख़राब हो जाता है...

आदर्श रूप से, संशोधनों की संख्या को सीमित करें, उदाहरण के लिए 5 तक:

यदि(! परिभाषित("WP_POST_REVISIONS")) परिभाषित("WP_POST_REVISIONS", 5);

स्थिरांक को प्लगइन में या उससे पहले परिभाषित किया जाना चाहिए।

सुरक्षा हटाना WP संस्करण

यह आवश्यक है ताकि हैकर्स को WP संस्करण का पता न चले और वे कमजोर बिंदुओं की पहचान न कर सकें। इस कोड के साथ, आपको साइट के रूट में readme.html फ़ाइल को भी हटाना होगा, क्योंकि यह वर्तमान संस्करण को भी इंगित करता है।

## WP संस्करण का पूर्ण निष्कासन ## आपको साइट के रूट में readme.html फ़ाइल को हटाने की भी आवश्यकता है delete_action('wp_head', 'wp_generator'); // हेडर से add_filter("the_generator", "__return_empty_string"); // फ़ीड और यूआरएल से

लॉगिन पृष्ठ पर त्रुटि संदेश अक्षम करें

लॉगिन या पासवर्ड दर्ज करते समय किसी त्रुटि के मामले में, WP रिपोर्ट करता है कि वास्तव में क्या गलत दर्ज किया गया था: लॉगिन या पासवर्ड। यह पासवर्ड अनुमान लगाने वालों के लिए अतिरिक्त जानकारी प्रदान करता है।

थीम और प्लगइन्स के लिए व्यवस्थापक पैनल में फ़ाइलों को संपादित करने की क्षमता अक्षम करें

सीधे व्यवस्थापक पैनल से फ़ाइलों को संपादित करने की क्षमता एक बड़ा सुरक्षा छेद बन सकती है। आइए इसे बंद करें.

## थीम्स और प्लगइन्स डिफाइन के लिए एडमिन पैनल में फ़ाइलों को संपादित करने की क्षमता अक्षम करें ("DISALLOW_FILE_EDIT", true);

xmlrpc.php के माध्यम से प्रकाशन बंद करें

डिफ़ॉल्ट रूप से, xmlrpc.php फ़ाइल के माध्यम से पोस्ट प्रकाशित करने की क्षमता सक्षम है।

यह बाहर से पोस्ट प्रकाशित करने का एक अवसर है, उदाहरण के लिए ईमेल से... अक्सर, इस कार्यक्षमता की आवश्यकता नहीं होती है और इसमें संभावित खामियां हो सकती हैं। इसलिए, अक्सर इसे अक्षम करना वांछनीय होता है। वैसे, वर्डप्रेस के पुराने संस्करणों में यह कार्यक्षमता डिफ़ॉल्ट रूप से अक्षम थी और इसका उपयोग करने के लिए इसे सक्षम करना पड़ता था।

## xmlrpc.php add_filter('xmlrpc_enabled', '__return_false') के माध्यम से प्रकाशित करने की क्षमता अक्षम करें;

एक व्यक्तिगत वेबसाइट बनाते समय भी, हर कोई इसके आगे उपयोग के सभी संभावित तरीकों का पूर्वाभास नहीं कर सकता है। साइट के आगे के विकास के लिए जमीन तैयार करना बहुत महत्वपूर्ण है। यदि आपने पहले एक वेबसाइट बनाई है और सभी पृष्ठों को डिफ़ॉल्ट रूप से .html एक्सटेंशन सौंपा है, और उसके बाद ही PHP का उपयोग करने का निर्णय लिया है, तो आगे पढ़ें।

पहले, SSI का उपयोग करने के लिए, साइट पेज नामों को .shtml एक्सटेंशन के साथ समाप्त करना पड़ता था, लेकिन आज अधिकांश इंटरनेट सर्वर कॉन्फ़िगर किए गए हैं ताकि SSI का उपयोग .html एक्सटेंशन वाले पेजों पर किया जा सके, जो काफी सुविधाजनक है। PHP एक पूरी तरह से अलग कहानी है - .php एक्सटेंशन डिफ़ॉल्ट एक्सटेंशन है। वेबसाइट डेवलपर्स, पहले से जानते हुए कि किसी दी गई प्रोग्रामिंग भाषा का उपयोग किया जाएगा, तुरंत सही एक्सटेंशन असाइन करते हैं।

लेकिन जब सभी पेज .html एक्सटेंशन के साथ समाप्त हो जाएं तो क्या करें?

HTML एक्सटेंशन को PHP से बदलें

यह कई मायनों में किया जा सकता है। सबसे स्पष्ट तरीका सभी पृष्ठों को .php एक्सटेंशन देना या मौजूदा एक्सटेंशन (.html, .shtml, आदि) को बदलना है। इस पद्धति के नुकसान हैं. उदाहरण के लिए, .html एक्सटेंशन वाले पहले से ही अनुक्रमित पृष्ठों को खोज इंजन द्वारा पुनः अनुक्रमित करना होगा। या इससे भी बदतर, किसी विशेष पृष्ठ से स्पष्ट रूप से लिंक करने वाले सभी बाहरी लिंक अमान्य होंगे। और आपको प्रत्येक साइट के मालिकों को इन परिवर्तनों के बारे में सूचित करना होगा और प्रत्येक पृष्ठ के लिए 301 त्रुटियों वाला एक और पृष्ठ बनाना होगा। बेशक, एक एक्सटेंशन को दूसरे में बदलना स्वीकार्य है, लेकिन क्या होगा यदि साइट पर पहले से ही कई पेज हों और अन्य साइटों से भिन्न पेजों के लिए कई लिंक हों?

एक सचेत कारण से, इस समय इस साइट के सभी पृष्ठ html एक्सटेंशन के साथ समाप्त होते हैं, और मैं उपरोक्त परिवर्तन नहीं करना चाहता था, जिससे मेरे लिए अनावश्यक कठिनाइयाँ पैदा हों।

आप इसे दूसरे तरीके से कर सकते हैं. यदि साइट को होस्ट करने वाला सर्वर mod_rewrite का समर्थन करता है (ज्यादातर मामलों में यह करता है), और .htaccess फ़ाइल तक पहुंच है, तो आप निम्न पंक्तियों को इसी फ़ाइल में जोड़ सकते हैं:

RewriteRule पर RewriteEngine ^(.*)\.html $1\.php

इस कोड को .htaccess में जोड़कर, आपको चिंता करने की ज़रूरत नहीं है। अपाचे के चमत्कारों की बदौलत .html एक्सटेंशन वाले सभी अनुरोधित गैर-मौजूद पेज स्वचालित रूप से .php एक्सटेंशन से बदल दिए जाएंगे। लेकिन ये तरीका अकेला नहीं है. आप उसी .htaccess फ़ाइल में निम्नलिखित लिख सकते हैं:

AddHandler एप्लिकेशन/x-httpd-php .php .html .htm

मेरी राय में यह सबसे सफल तरीका है। यह HTML पेजों को PHP पेजों के बराबर बनाता है, जिसका अर्थ है कि सभी PHP फ़ंक्शंस का उपयोग अब HTML एक्सटेंशन वाले पेजों में किया जा सकता है। यदि आपके पास .htaccess फ़ाइल तक पहुंच नहीं है, तो आप होस्टिंग कंपनी को एक पत्र लिख सकते हैं और विनम्रतापूर्वक अपाचे कॉन्फ़िगरेशन (httpd.conf) में साइट के लिए आवश्यक मान दर्ज करने के लिए व्यवस्थापक से पूछ सकते हैं।

वैसे, यदि इससे पहले साइट एसएसआई का उपयोग इस प्रकार करती थी:

फिर नई PHP स्थिति में इस कोड को इसके साथ बदलने की आवश्यकता है:

खैर, बस इतना ही, मुझे लगता है कि उपरोक्त तरीकों में से एक मदद करेगा।