इसके जवाब में: ट्विटर बूटस्ट्रैप नेविगेशन में वर्डप्रेस एडमिन बार ओवरलैपिंग
इनके द्वारा पूछा गया: @TheWebs
यदि आप वर्डप्रेस के साथ ट्विटर बूटस्ट्रैप का उपयोग कर रहे हैं और आपके नेविगेशन बार के साथ वर्डप्रेस एडमिन बार के साथ एक समस्या है, तो आप शायद इनमें से कुछ उत्तरों से बहुत निराश हैं। मैंने हर जगह समाधान की तलाश की और अंत में केवल एक निचले गियर में शिफ्ट होने का निर्णय लिया और एक समाधान निकाला जो कि मुझे वही करने की आवश्यकता है जो मुझे करना चाहिए।
तो यहाँ एक उत्तर है कि वर्डप्रेस एडमिन बार को छिपाए नहीं, या अपने पेज के नीचे वर्डप्रेस एडमिन बार को स्थानांतरित करें। यह उत्तर वर्डप्रेस व्यवस्थापक को सही रखेगा जहां वह है ... आपके पृष्ठों के शीर्ष पर।
कृपया ध्यान दें कि इसे पूरा करने के लिए कुछ छोटे कदम उठाने होंगे, लेकिन यह इसके लायक है। यह वास्तव में एक जटिल या समय लेने वाली प्रक्रिया नहीं है। मैं सिर्फ यह सुनिश्चित करना चाहता था कि ऐसा करने के बारे में स्पष्टीकरण स्पष्ट और अनुसरण / समझने में आसान था।
चरण 1
थीम्स में बॉडी टैग के लिए एक टेम्प्लेट टैग होता है जो थीम लेखकों को सीएसएस के साथ अधिक प्रभावी ढंग से स्टाइल करने में मदद करेगा। टेम्प्लेट टैग कहा जाता है
body_class
। यह फ़ंक्शन बॉडी एलिमेंट को अलग-अलग क्लासेस देता है और आम तौर पर header.php
's HTML बॉडी टैग' में जोड़ा जा सकता है ।
- ट्विटर बूटस्ट्रैप निर्देशिका का उपयोग करके अपने वर्तमान में सक्रिय वर्डप्रेस थीम खोलें ।
header.php
इसे ढूंढे और खोलें।
- का पता लगाएं
<body>
।
- से बदलो
<?php echo '<body class="'.join(' ', get_body_class()).'">'.PHP_EOL; ?>
ऊपर के तीन चरणों को पूरा करने के बाद, आपने अब वर्डप्रेस बॉडी क्लासेस के साथ अपने वर्डप्रेस थीम को सफलतापूर्वक सक्षम किया है।
चरण 2 (वैकल्पिक!)
- कस्टम सशर्त सीएसएस कक्षाओं को
<body>
टैग में जोड़ें।
डिफ़ॉल्ट रूप से, वर्डप्रेस पहले से ही HTML टैग्स के लिए डिफ़ॉल्ट कक्षाओं की एक सूची प्रदान करता है, यदि आप body_class()
या get_body_class()
कार्यों का उपयोग कर रहे हैं ।
यदि आप अपनी वर्डप्रेस वेबसाइट पर किसी भी प्रदान किए गए फ्रंट-एंड पेज के सोर्स कोड को देखते हैं, तो आप दो सीएसएस वर्गों को स्वचालित रूप से HTML <body>
टैग में जोड़े गए "लॉग-इन" और "एडमिन-बार" देखेंगे ।
आप यह भी देखेंगे कि <body>
यदि उपयोगकर्ता लॉग इन है, तो सीएसएस वर्ग के नाम केवल HTML टैग में जोड़े जाएंगे, अन्यथा उन्हें HTML <body>
टैग में नहीं जोड़ा जाएगा ।
इसलिए यदि आप डिफ़ॉल्ट वर्डप्रेस सीएसएस श्रेणी के नामों का उपयोग नहीं करना चाहते हैं, तो आप अपना स्वयं का बहुत आसानी से जोड़ सकते हैं।
- ट्विटर बूटस्ट्रैप निर्देशिका का उपयोग करके अपने वर्तमान में सक्रिय वर्डप्रेस थीम खोलें ।
functions.php
इसे ढूंढे और खोलें।
-
add_filter('body_class', 'mbe_body_class');
फ़ाइल के शीर्ष पर जोड़ें ।
- फ़ाइल के निचले भाग में निम्न कोड जोड़ें ।
कोड:
function mbe_body_class($classes){
if(is_user_logged_in()){
$classes[] = 'body-logged-in';
} else{
$classes[] = 'body-logged-out';
}
return $classes;
}
अब, यदि आप अपनी वर्डप्रेस वेबसाइट पर किसी भी प्रदान किए गए फ्रंट-एंड पेज के सोर्स कोड को देखते हैं, यदि उपयोगकर्ता लॉग इन है, तो आपको HTML <body>
टैग में "बॉडी-लॉग-इन" जोड़ा गया है , और यदि उपयोगकर्ता है लॉग आउट, आप देखेंगे कि "बॉडी-लॉग-आउट" को HTML <body>
टैग में जोड़ दिया गया है ।
चरण 3
- अपनी थीम में सीएसएस कोड जोड़ें।
यह कोड का वह भाग है जो वर्डप्रेस व्यवस्थापक बार, और आपके ट्विटर बूटस्ट्रैप नेविगेशन दोनों को ठीक से प्रदर्शित करने के लिए आपके विषय को सही करेगा, चाहे उपयोगकर्ता आपकी वेबसाइट में लॉग इन हो या लॉग आउट हो।
- ट्विटर बूटस्ट्रैप निर्देशिका का उपयोग करके अपने वर्तमान में सक्रिय वर्डप्रेस थीम खोलें ।
functions.php
इसे ढूंढे और खोलें।
-
add_action('wp_head', 'mbe_wp_head');
फ़ाइल के शीर्ष पर जोड़ें ।
- फ़ाइल के निचले भाग में निम्न कोड जोड़ें ।
कोड:
function mbe_wp_head(){
echo '<style>'.PHP_EOL;
echo 'body{ padding-top: 70px !important; }'.PHP_EOL;
// Using custom CSS class name.
echo 'body.body-logged-in .navbar-fixed-top{ top: 28px !important; }'.PHP_EOL;
// Using WordPress default CSS class name.
echo 'body.logged-in .navbar-fixed-top{ top: 28px !important; }'.PHP_EOL;
echo '</style>'.PHP_EOL;
}
कोड के लिए संपादित करें
add_action('wp_head', 'mbe_wp_head');
function mbe_wp_head(){
echo '<style>'
.PHP_EOL
.'body{ padding-top: 70px !important; }'
.PHP_EOL
.'body.body-logged-in .navbar-fixed-top{ top: 46px !important; }'
.PHP_EOL
.'body.logged-in .navbar-fixed-top{ top: 46px !important; }'
.PHP_EOL
.'@media only screen and (min-width: 783px) {'
.PHP_EOL
.'body{ padding-top: 70px !important; }'
.PHP_EOL
.'body.body-logged-in .navbar-fixed-top{ top: 28px !important; }'
.PHP_EOL
.'body.logged-in .navbar-fixed-top{ top: 28px !important; }'
.PHP_EOL
.'}</style>'
.PHP_EOL;
}
Mbe_wp_head फ़ंक्शन के इस संस्करण में एक मोबाइल-प्रथम मीडिया क्वेरी शामिल है, यह सुनिश्चित करने के लिए कि आपके हेडर को उचित दूरी से नीचे धकेल दिया गया है। मोबाइल के लिए, WP एडमिन बार 48px लंबा है। 783px ब्रेकपॉइंट के बाद, व्यवस्थापक बार केवल 28px लंबा हो जाता है।
ये लो। यदि उपयोगकर्ता लॉग इन है, तो आपको अब अपने पेज के शीर्ष पर वर्डप्रेस एडमिन बार होना चाहिए, इसके तुरंत बाद आपके ट्विटर बूटस्ट्रैप किए गए नेविगेशन। यदि उपयोगकर्ता आपकी वर्डप्रेस वेबसाइट से लॉग आउट है, तो आपके ट्विटर बूटस्ट्रैप नेविगेशन को अभी भी आपकी वेबसाइट के शीर्ष पर उचित रूप से प्रदर्शित होना चाहिए।