2012-01-24 6 views
5

मैं वेबसाइट निर्माण के लिए काफी नया हूं। फिर भी लाटेक्स और कुछ अन्य प्रोग्रामिंग भाषाओं में कुछ अनुभव है।वेबसाइट में मेनू शामिल करने के लिए अच्छी प्रथाएं?

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

ऐसे कई तरीके हैं जिन्हें मैं जानता हूं:

  • मेनू एक स्थिर पृष्ठ है, आपकी सामग्री आईफ्रेम में है। ऐसा करने का यह सबसे बुरा तरीका है, क्योंकि यह बहुत सारी चीजें जैसे बैक/फॉरवर्ड आदि को तोड़ता है ... (जो मुझे पता है कि कुछ के लिए वांछनीय हो सकता है, लेकिन मेरे मामले में नहीं)।
  • यह अब मैं क्या उपयोग कर रहा हूँ है: हर वेब पेज Iframe का उपयोग करके मेनू में शामिल हैं:

    <iframe src="menu.html" class="menu" height="100%" frameborder="0"></iframe> 
    

    इस विधि के लिए नकारात्मक पक्ष यह है: मेनू ठीक से पुनः लोड नहीं होता है जब लोगों को अपनी वेबसाइट पर पुनः , जब तक आप कुछ पटकथा जो विशिष्ट रूप से ऐसा करने के लिए ब्राउज़र बताता है का उपयोग करें: लघु उद्योग का उपयोग कर मेनू सहित:

    document.getElementById('some_frame_id').contentWindow.location.reload(); 
    
  • यही तो मैं अपने नए मेजबान के बाद से की सोच रहा था इस अनुमति देता है।

    < !--#include virtual="/menu.html"--> 
    

    संभव नकारात्मक पक्ष यह है कि हर वेबपेज भी शामिल है, और इस तरह पार्स किया जा सकता है के लिए अनुमति चाहिए (इसमें फाइल सिस्टम को धीमा कर देती है)। सुरक्षा मेरे लिए कोई समस्या नहीं है।

आप क्या सुझाएंगे? क्या सौजन्य नियम हैं कि क्या किया जाना चाहिए? ऊपर वर्णित विधियों में से किसी के साथ संगतता समस्याएं हैं? क्या बेहतर तरीके हैं?

उदाहरण के लिए: मुझे दूसरी विधि (जिसे मैं अब उपयोग कर रहा हूं) पर संदेह कर रहा हूं, Google अनुक्रमण को तोड़ता है, इसलिए केवल मेरा मुखपृष्ठ अनुक्रमित हो जाता है। (मुझे यकीन नहीं है कि यह सच है हालांकि)।

+4

समय-समय पर अनुकूलित करने का प्रयास न करें। एसएसआई का प्रयोग करें और, यदि कोई प्रदर्शन समस्या है, तो देखें कि आप क्या कर सकते हैं। लेकिन मुझे यकीन है कि यह कभी नहीं होगा। –

+0

गूगल इंडेक्सिंग ब्रोकन नहीं है। सर्वर को क्लाइंट को भेजने से पहले एचटीएमएल का टुकड़ा शामिल है, चाहे वह किसी का ब्राउज़र हो, या Google के क्रॉलर में से एक हो। 'शामिल' टिप्पणी सहित लिपि कभी नहीं भेजी जाएगी। – bigblind

+0

@JBNizet: ठीक है, मैंने [cgi पर इस ट्यूटोरियल] में पढ़ा है (http://oreilly.com/openbook/cgi/ch05_02.html) कि यह एक बुरा विचार है। मुझे कहना होगा कि मैंने उन पृष्ठों में कोई प्रदर्शन समस्या नहीं देखी है जो मैं पहले से ही एसएसआई हूं। क्या पृष्ठों (एक्सटेंशन) को नाम देने के तरीके पर कोई नियम/सम्मेलन हैं? मेरे एसएसआई-सक्षम पृष्ठों को अभी '.shtml' बढ़ाया गया है, क्या कोई समस्या है यदि मैं बस सब कुछ '.html' रखता हूं (मुझे पता है कि यह काम करेगा, लेकिन क्या यह ठीक है)? – romeovs

उत्तर

3

ऐसा करने का तरीका सर्वर-साइड जैसे कुछ का उपयोग करना है। अन्य वेब डेवलपर्स PHP या पायथन या कुछ टेम्पलेटिंग सिस्टम का उपयोग कर रहे हैं, लेकिन आखिरकार डिज़ाइन पैटर्न यह है कि HTML आउटपुट डुप्लिकेट किया गया है, लेकिन आपके टेम्पलेट सिस्टम में HTML नहीं है।

एसएसआई के बारे में आपकी चिंता प्रतिपादन धीमा करने के बारे में आपकी चिंता निराधार है। एसएसआई अविश्वसनीय रूप से तेज़ है और वेब सर्वर एक ही अनुकूलन को नियोजित करेगा जो इसे एक पृष्ठ प्रदान करेगा; यह इसे स्मृति में कैश कर सकता है और इसे फ्लाई पर संसाधित कर सकता है।

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

0

1.) इसका प्रबंधन करने का एक तेज़ तरीका DreamWeaver टेम्पलेट्स का उपयोग करना है। किसी भी एचटीएमएल ब्लॉक को टेम्पलेट में बनाया जा सकता है। एक टेम्पलेट का उपयोग आपकी साइट पर किसी भी पेज में किया जा सकता है। टेम्पलेट्स DreamWeaver के अंदर एक संपत्ति के रूप में प्रबंधित किया जाता है।टेम्पलेट संपादित करें और DreamWeaver उन सभी स्थानों को अद्यतन करता है जहां उस टेम्पलेट का उपयोग आपकी साइट के पृष्ठों में किया जाता है। उपकरण मुफ़्त नहीं है। अन्य मुफ्त प्रौद्योगिकियों का पालन करें:

2.) वेग टेम्पलेट इंजन apache.org की साइट पर कई पृष्ठों को चलाता है। आप अपनी वेबसाइट बनाने के लिए एएनटी का उपयोग कर सकते हैं। http://velocity.apache.org/engine/devel/webapps.html

3.) आप जावा के साथ कुछ भी कर रहे हैं ... JFS और Facelets की जाँच करें। http://www.ibm.com/developerworks/java/library/j-facelets/

1

एचटीएमएल 5 में आप वस्तु टैग के साथ आसानी से कर सकते है, जैसे

<object data=menu_page.html type="text/html" style="usual css..." ></object> 

आप स्थिति निर्दिष्ट करने के लिए है, चौड़ाई और ऊंचाई सीएसएस का उपयोग कर। तो अगर यह नहीं बल्कि पाठ्य सामग्री की तुलना में संरचनात्मक एचटीएमएल है, आप इसे एक पृष्ठभूमि परत में style="z-index:-1;position:absolute;top:0;left:0; width:100%;height:100%"

यह सबसे हाल ही में ब्राउज़रों में काम करने के लिए लगता है

लघु उद्योग पर कुछ लाभ (Safari और Chrome पर tesing) का उपयोग कर डाल सकता है:

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