এসইও

NodeJS এবং অন্যান্য ব্যাকএন্ড স্ট্যাকের সাথে প্রতিক্রিয়া বা Vue ব্যবহার করে প্রতিক্রিয়াশীল জাভাস্ক্রিপ্টের জন্য SEO

কিভাবে আমাদের লাইভ আলোচনা সময় HTML5, CSS3 এবং জাভাস্ক্রিপ্টের সাথে পাওয়ার এসইও বন্ধুত্বপূর্ণ মার্কআপ এই বছরের শুরুর দিকে, আমরা প্রতিক্রিয়া সম্পর্কে কথা বলে অনেক সময় কাটিয়েছি। এসইও-এর জন্য আপনাকে যা মনে রাখতে হবে তা আমি প্রতিক্রিয়ার জন্য খুঁটিনাটি বিষয়গুলিতে খনন করতে যাচ্ছি। আমরা আলোচনায় অংশগ্রহণকারী ডুডা-এর কৌশলগত একীকরণের পরিচালক রাস জেফ্রির বিশ্লেষণের জন্য কোড ব্যবহার করব।

রিঅ্যাক্ট করা, না রিঅ্যাক্ট করা?

একটি প্রতিক্রিয়া ফ্রেমওয়ার্ক ওয়েবসাইট (অ্যাপ্লিকেশন) পৃষ্ঠাগুলিকে অনুভব করতে পারে যে তাদের নীচে জাদু ছড়িয়ে আছে কারণ ড্যাশবোর্ডের বিশদগুলি প্রাণবন্ত ব্যবহারকারীদের সম্প্রদায়ের সাথে একত্রিত হয়, যেমন আপনি Facebook এবং Twitter থেকে আশা করেন এমন অভিজ্ঞতা।

যাইহোক, ব্যবসায়িক প্রয়োজনীয়তাগুলি অবশ্যই নির্দেশ করবে যে আপনি একটি প্রকল্পে কোন প্রযুক্তি ব্যবহার করবেন। আপনি যদি এমন একটি অ্যাপ লিখছেন যার জন্য Facebook টাইপ ডায়নামিক প্রয়োজন, তাহলে আপনি এটি সরবরাহ করার জন্য একটি প্রতিক্রিয়াশীল কাঠামো তৈরিতে বিনিয়োগ করতে চান। তবুও, বাস্তবে, খুব কম সাইটেই এই ধরনের প্রয়োজনীয়তা রয়েছে। বেশিরভাগ ক্ষেত্রেই আপনি jQuery, বা ভ্যানিলা জাভাস্ক্রিপ্টের সাথে ভাল থাকেন যদি আপনি এটি থেকে দূরে যেতে পারেন, মৌলিক কার্যকারিতার কারণে।

আপনি যদি মুষ্টিমেয় পৃষ্ঠাগুলিতে একটি প্রতিক্রিয়াশীল উপাদান ব্যবহার করেন, তাহলে আপনার প্রতিক্রিয়াশীল কোডটি কোথায় এবং কখন প্রয়োজন সেখানে সীমাবদ্ধ করার উপায় রয়েছে৷ এটি লোড করতে সার্ভার-সাইড, (বা এমনকি ক্লায়েন্ট-সাইড), শর্তসাপেক্ষ কোড লিখুন। আপনি যা করতে চান সব ক্ষমতা পপআপ মডেল, ইন্টারেক্টিভ মেনু, এবং ট্যাব করা বিষয়বস্তু ইত্যাদি, তাহলে প্রতিক্রিয়াশীল লাইব্রেরিগুলির খরচ বনাম সুবিধার বিবেচনা অন্যান্য পদ্ধতির বিরুদ্ধে তাদের পক্ষে হবে না।

এসইও জন্য রেন্ডারিং কৌশল

কিভাবে এবং কখন আপনার ওয়েব অ্যাপ এসইও এর জন্য গুরুত্বপূর্ণ বিষয়বস্তু রেন্ডার করে সে সম্পর্কে আপনাকে অবশ্যই আলাদাভাবে চিন্তা করতে হবে। এটাই আমাদের আলোচনার দ্বিতীয়ার্ধে শেখার রাস আমাদের নিয়ে এসেছে। তিনি উদাহরণ দেখান কিভাবে সার্ভার-সাইড তৈরি করতে হয় এবং জাভাস্ক্রিপ্টের পাশাপাশি একটি অপ্টিমাইজ করা অ্যাপ শেল পাঠাতে হয় যাতে ক্রলাররা এসইও-এর জন্য প্রয়োজনীয় জিনিস পেতে পারে এবং বাকিটা 'হাইড্রেশন' ব্যবহার করে ক্লায়েন্ট-সাইড রেন্ডার করা হয়।

এখানে সম্পূর্ণ আলোচনা দেখুন.

ফ্রেমওয়ার্ক

এই প্রসঙ্গে অ্যাপ্লিকেশন প্রোগ্রামিং সাধারণত একা ফ্রন্টএন্ড লাইব্রেরির চেয়ে বেশি জড়িত থাকে। ইউটিলিটি স্ক্রিপ্ট সহ কনফিগারেশন ফাইল লেআউট ডিজাইনের একটি কনভেনশন গঠন করতে পারে যা প্রতিক্রিয়া বা Vue এর জন্য একটি কাঠামো হিসাবে উল্লেখ করা হয়। নেক্সট এবং নক্সট যথাক্রমে NodeJS-ভিত্তিক প্রতিক্রিয়া এবং Vue ফ্রেমওয়ার্ক।

ফ্রেমওয়ার্কগুলি প্রচলিত স্পেসিফিকেশন এবং সর্বোত্তম অনুশীলন অনুসারে ভারা প্রকল্প ফাইল এবং পরিষেবাগুলিকে সরল করে। Russ আমাদের GitHub প্রকল্পগুলির লিঙ্কগুলি প্রদান করে যা প্রদর্শন করে যে কিভাবে অন্যান্য জনপ্রিয় ব্যাকএন্ড প্রোগ্রামিং ভাষার সাথে প্রতিক্রিয়া এবং ভিউকে একীভূত করতে হয়। আপনি যদি NodeJS এর ​​চেয়ে ব্যাকএন্ডে একটি ভিন্ন রানটাইম প্রক্রিয়া চান তবে সেগুলি পরীক্ষা করে দেখুন।

  • Python React / Python Vue
  • পিএইচপি প্রতিক্রিয়া / পিএইচপি ভিউ
  • রুবি প্রতিক্রিয়া/রুবি ভিউ
  • জাভা রিঅ্যাক্ট/জাভা ভিউ

NodeJS এর ​​সাথে SEO কোড স্নিপেট

আপনি যখন এন্টারপ্রাইজ বা স্টার্টআপ স্তরের প্রয়োজনীয়তায় পৌঁছান, তখন একটি কাঠামোর সাথে একটি পরিষেবা স্তরের চুক্তি সম্ভব নাও হতে পারে। শুধুমাত্র NodeJS (এক্সপ্রেস সহ) এর উপর ভিত্তি করে এসইও কোড স্নিপেট দিয়ে শুরু করার মধ্য দিয়ে রাস আমাদের নিয়ে যায়।

নমুনা প্রতিক্রিয়া এবং Vue উভয় প্রকল্পের তিনটি মূল ফাইলে আমাদের বিশ্লেষণের জন্য প্রয়োজনীয় কোড রয়েছে:

  • The Olymp Trade প্লার্টফর্মে ৩ টি উপায়ে প্রবেশ করা যায়। প্রথমত রয়েছে ওয়েব ভার্শন যাতে আপনি প্রধান ওয়েবসাইটের মাধ্যমে প্রবেশ করতে পারবেন। দ্বিতয়ত রয়েছে, উইন্ডোজ এবং ম্যাক উভয়ের জন্যেই ডেস্কটপ অ্যাপলিকেশন। এই অ্যাপটিতে রয়েছে অতিরিক্ত কিছু ফিচার যা আপনি ওয়েব ভার্শনে পাবেন না। এরপরে রয়েছে Olymp Trade এর এন্ড্রয়েড এবং অ্যাপল মোবাইল অ্যাপ। app.js ফাইল একটি "ব্লগ" অ্যাপ শেল পরিচালনা করে।
  • The Olymp Trade প্লার্টফর্মে ৩ টি উপায়ে প্রবেশ করা যায়। প্রথমত রয়েছে ওয়েব ভার্শন যাতে আপনি প্রধান ওয়েবসাইটের মাধ্যমে প্রবেশ করতে পারবেন। দ্বিতয়ত রয়েছে, উইন্ডোজ এবং ম্যাক উভয়ের জন্যেই ডেস্কটপ অ্যাপলিকেশন। এই অ্যাপটিতে রয়েছে অতিরিক্ত কিছু ফিচার যা আপনি ওয়েব ভার্শনে পাবেন না। এরপরে রয়েছে Olymp Trade এর এন্ড্রয়েড এবং অ্যাপল মোবাইল অ্যাপ। server.js ফাইল এক্সপ্রেস লাইব্রেরিতে টেনে নেয়, SSR-এর জন্য রেন্ডার পদ্ধতি সহ অনুরোধ পরিচালনার জন্য কনফিগার করে।
  • index.js ফাইলটি NodeJS রানটাইম প্রক্রিয়ার এন্ট্রি পয়েন্ট হিসেবে কাজ করে।

SEO-বন্ধুত্বপূর্ণ প্রতিক্রিয়া

The Olymp Trade প্লার্টফর্মে ৩ টি উপায়ে প্রবেশ করা যায়। প্রথমত রয়েছে ওয়েব ভার্শন যাতে আপনি প্রধান ওয়েবসাইটের মাধ্যমে প্রবেশ করতে পারবেন। দ্বিতয়ত রয়েছে, উইন্ডোজ এবং ম্যাক উভয়ের জন্যেই ডেস্কটপ অ্যাপলিকেশন। এই অ্যাপটিতে রয়েছে অতিরিক্ত কিছু ফিচার যা আপনি ওয়েব ভার্শনে পাবেন না। এরপরে রয়েছে Olymp Trade এর এন্ড্রয়েড এবং অ্যাপল মোবাইল অ্যাপ। App.js রিঅ্যাক্টের উদাহরণ দেখায় যে ইউআরএলগুলিতে এসইও বন্ধুত্বপূর্ণ পাথ রাউটিং করে যেগুলি এসপিএ-স্টাইলের জন্য টুকরোগুলির উপর নির্ভর করে না ভার্চুয়াল পৃষ্ঠা ভিউ ভিতরে server.js একটি 'প্রসঙ্গ' ডেটা অবজেক্ট কল করার জন্য সম্পদ বিবরণ বোঝায় ReactDOMServer.renderToString() URL এবং সম্ভাব্য অন্যান্য মানদণ্ডের উপর ভিত্তি করে প্রসঙ্গ সহ আমাদের অ্যাপ শেল রেন্ডার করতে।

The Olymp Trade প্লার্টফর্মে ৩ টি উপায়ে প্রবেশ করা যায়। প্রথমত রয়েছে ওয়েব ভার্শন যাতে আপনি প্রধান ওয়েবসাইটের মাধ্যমে প্রবেশ করতে পারবেন। দ্বিতয়ত রয়েছে, উইন্ডোজ এবং ম্যাক উভয়ের জন্যেই ডেস্কটপ অ্যাপলিকেশন। এই অ্যাপটিতে রয়েছে অতিরিক্ত কিছু ফিচার যা আপনি ওয়েব ভার্শনে পাবেন না। এরপরে রয়েছে Olymp Trade এর এন্ড্রয়েড এবং অ্যাপল মোবাইল অ্যাপ। server.js ফাইলে আরও পরিমার্জনের জন্য ডেটা প্রসঙ্গ অবজেক্ট রয়েছে। Russ শেষ পর্যন্ত ব্রাউজারে পাঠানোর আগে একটি নির্মিত অ্যাপ শেলের জন্য SEO সম্পূর্ণ করার জন্য শিরোনাম এবং অন্যান্য মেটা ডেটা প্রতিস্থাপন করে।

সর্বশেষে, index.js নোডজেএস প্রক্রিয়ার সূচনা পয়েন্ট হিসাবে কাজ করে এবং ReactDOM.hydrate() শেল লোড হওয়ার পরে কম গুরুত্বপূর্ণ অক্জিলিয়ারী সামগ্রী সহ আমাদের অ্যাপটি তৈরি করতে ব্যবহৃত হয়।

একটি 'বিল্ড' ডিরেক্টরি রয়েছে index.html SSR টেমপ্লেট নির্মাণের জন্য একটি লক্ষ্য ফাইল হিসাবে। অন্য দুটি ফাইল, উপাদান হোম এবং পোস্ট, একটি ব্যবহার করে সংরক্ষণ করা হয় .js এক্সটেনশন, যা কনভেনশন দ্বারা নিহিত এবং তাই আমদানি বিবৃতিতে স্পষ্টভাবে বানান করার প্রয়োজন নেই। আমরা কম্পোনেন্ট ফাইলের বিশ্লেষণ দ্রুত এড়িয়ে চলে যাচ্ছি, এটা বলা ব্যতীত যে কম্পোনেন্ট ফাইলগুলিকে পুনরায় সংগঠিত করা হয়েছে উপাদানs সাবডিরেক্টরি।

Russ এর উদাহরণে, সমস্ত ফাইল, কম্পোনেন্ট ফাইল সহ, প্রোজেক্ট বেস ডিরেক্টরিতে অবস্থিত। প্রতিক্রিয়া ফাইলগুলির জন্য ডিরেক্টরি গাছটি এইরকম দেখায়:
├── App.js
├── Home.js
├── Posts.js
├── নির্মাণ
│ └── index.html
├── index.js
└── server.js

আপনি যদি JSX সিনট্যাক্সের সাথে পরিচিত না হন তবে এটি একটি জাভাস্ক্রিপ্ট ল্যাঙ্গুয়েজ এক্সটেনশন যা এক্সএমএল এর সাথে প্রতিক্রিয়া উপাদান এনকোডিং এর জন্য তৈরি করা হয়েছে যাতে টেমপ্লেট ফাইলগুলি জাভাস্ক্রিপ্ট অন্তর্ভুক্ত করতে পারে। শিশু উপাদানগুলি আমদানি করা হয় এবং পরে নাম কনভেনশন দ্বারা রেফারেন্স করা হয় (Home.js এবং Posts.js মানচিত্র এতে এবং যথাক্রমে) XML টেমপ্লেট ব্লকে।

Russ ব্যবহার করে প্রতিক্রিয়া-রাউটার-ডোম লাইব্রেরি (যা আপনাকে NPM এর মাধ্যমে ইনস্টল করতে হতে পারে): রাউটার এবং স্ট্যাটিকরাউটার, সুইচ এবং নেভিলিংক। এই লাইব্রেরিগুলি সাধারণ কাজের সুবিধার জন্য রেডিমেড হেল্পারগুলি প্রদান করে, যেমন একটি url পাথ বা রিসোর্সে HTML লিঙ্ক তৈরি করতে NavLink 'to' সাহায্যকারী ব্যবহার করে, যা রেলের 'link_to' সাহায্যকারীর সাথে কিছুটা সাদৃশ্যপূর্ণ।

সুইচ এবং রাউটার ইন এর মাধ্যমে App.js Russ url পাথ মেলানোর জন্য সিনট্যাক্স প্রদর্শন করে। ইনডেক্স পাথ স্টেটমেন্টের জন্য 'সঠিক' কীওয়ার্ডটি লক্ষ্য করুন। এটি শুধুমাত্র '/' এর সাথে মিলিত হওয়া প্রয়োজন বা এটি অন্যথায় অ্যাপ্লিকেশনের প্রতিটি পথের সাথে মেলে! 'সঠিক' কীওয়ার্ড ব্যবহার করলে লোভী ম্যাচ থেকে ডিফল্ট মানদণ্ড পরিবর্তন হয় যা '/পোস্ট' এবং '/পোস্ট/হ্যালো-ওয়ার্ল্ড' ইত্যাদির সাথে মেলে।

In server.js নেটওয়ার্কে আমাদের অ্যাপ পরিবেশন করার জন্য প্রয়োজনীয় পোর্ট লিসেনার এবং প্রতিক্রিয়া পদ্ধতির সাথে আমাদের অ্যাপ্লিকেশন সেট আপ করতে Russ এক্সপ্রেস নামক একটি সাধারণ বাহ্যিক কাঠামো ব্যবহার করে। আপনি যদি স্থানীয়ভাবে কাজ করেন, তাহলে আপনি লোকালহোস্ট অনুরোধের মাধ্যমে কাজ করার পরিকল্পনা করছেন এমন একটি খোলা পোর্টের সাথে মেলে একটি স্থানীয় পরিবেশ পরিবর্তনশীল PORT স্থাপন করতে চাইবেন। উত্পাদনে, এটি সাধারণত পোর্ট 80 এ সেট করতে হবে।

Vue ফ্রেমওয়ার্ক

সবশেষে, Vue ফ্রেমওয়ার্ক হল আরও সহজলভ্য প্রতিক্রিয়াশীল ফ্রেমওয়ার্কগুলির মধ্যে একটি এবং সেই ধারণাটি শুরু থেকেই অনুভূত হয়। টেমপ্লেট ফাইল হ্যান্ডেলবার-স্টাইল জাভাস্ক্রিপ্ট ইন্টারপোলেশন সহ আক্ষরিক অর্থে HTML। আপনি যদি Vue ব্যবহার করেন, তাহলে আপনার নিজের ব্যাকএন্ডের সাথে কাজ করার সম্ভাবনা বেশি, যদিও আপনি যদি সেই পথে যাওয়ার সিদ্ধান্ত নেন তাহলে Nuxt হল Vue-এর জন্য একটি অত্যাধুনিক কাঠামো।

Russ আমাদের Vue SSR ডকুমেন্টেশনের দিকে নির্দেশ করে এবং তার কোড স্নিপেটগুলি আমাদের ব্লগ অ্যাপের Vue সংস্করণ বাস্তবায়নের জন্য মূলত একই ফাইল কাঠামো এবং বিন্যাস ব্যবহার করে কাজ করে। নিম্নলিখিত সারাংশে নীচে উপলব্ধ প্রতিক্রিয়া এবং Vue উভয়ের জন্য কোড খুঁজুন।

সম্পরকিত প্রবন্ধ

0 মন্তব্য
ইনলাইন প্রতিক্রিয়া
সমস্ত মন্তব্য দেখুন
শীর্ষ বোতামে ফিরে যান