Mage :: getBaseUrl () বনাম Mage :: getBaseUrl (Mage_Core_Model_Store :: URL_TYPE_WEB)


26

Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB)পরিবর্তে ব্যবহার করার কোনও কারণ আছে Mage::getBaseUrl()? আমি উভয় ব্যবহারে দেখেছি, এবং তারা উভয় একই জিনিস ফিরে। লম্বা কি বেহাল? এটি 2 ফাংশন কলগুলিও ব্যবহার করে।

তদতিরিক্ত, আমি দেখতে পাচ্ছি যে Mage_Core_Model_Store::URL_TYPE_WEBকেবল 'ওয়েব' স্ট্রিংটি দেয়। এর কী লাভ?

উত্তর:


40

প্রথমেই দেখ getBaseUrl()Mage.php

 public static function getBaseUrl($type = Mage_Core_Model_Store::URL_TYPE_LINK, $secure = null)
    {
        return self::app()->getStore()->getBaseUrl($type, $secure);
    }

একটি সহজ কথায় আমরা বলতে পারি:

Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB)আপনার ম্যাজেন্টো Site Urlথেকে ইঙ্গিত করেছে this url Magento is running it System

এবং অন্য শব্দ, আমরা বলতে পারি যে Mage::getBaseUrl() give the url which is linking your magento internal page urls That MVC page

পুরোনো যাদুকর :: getBaseUrl (Mage_Core_Model_Store :: URL_TYPE_WEB):

মান সেট এখানে : থেকে Admin>System>Configuration>WebSite>Secure/Unsecure -> Base url

পুরোনো যাদুকর :: getBaseUrl ():

মান সেট এখানে : থেকে Admin>System>Configuration>WebSite>Secure/Unsecure -> Base Link url

প্রধান পার্থক্য দেখানো:

যখনই আমরা সক্ষম হয় Use Web Server Rewrites = noথেকে admin>system>Web>Search Engines Optimization Rewrites

Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB) এর মান দিন http://youdomain/

কিন্তু Mage::getBaseUrl()এমন মান দিন http://youdomain/index.php/যা আসলে মান দেয় give Mage_Core_Model_Store::URL_TYPE_LINK

আপনি যখন ইউআরএল hit http://youdomain/কল করবেন Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB)তবে আপনার সেই times you can see all pageলিঙ্কটি এর site is starting with http://youdomain/index.php/ অর্থ এটি নেওয়া হয়েছিলMage::getBaseUrl()/ Mage::getBaseUrl($type = Mage_Core_Model_Store::URL_TYPE_LINK, $secure = null)

উদাহরণ:

যদি আপনি কোনও ফোল্ডার তৈরি করে থাকেন amit at Magento root dir and there you have put a file test.jsতবে আপনি এই ফাইলটি ম্যাজেন্টো বাড়িতে কল করতে চান তবে আপনি এই কোডটি ব্যবহার করতে পারেন

<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB).'amit/test.js'; ?>

এবং এটি ইউআরএল দেয়

www.yourdomain/amit/test.js

আপনি যদি কেবলমাত্র এমনটি ব্যবহার করেন Mage::getBaseUrl()যা আপনাকে www.yourdomain/index.php/amit/test.jsপরীক্ষার মানে দেয় j js অ্যাক্সেস করতে পারে না (যখন পুনরায় পুনরায় অক্ষম করা হবে)

আপনি নতুন কন্ট্রোলার এবং নতুন অ্যাকশন তৈরি করেছেন তবে আপনি ব্যবহার করতে পারবেন

Mage::getBaseUrl().'yourmodulerouter/yourcontroller/youraction'

it show  url like `http://yourdomain/index.php/yourmodulerouter/yourcontroller/youraction`

বা দিন http://yourdomain/yourmodulerouter/yourcontroller/youraction(পুনর্লিখন সক্ষম করার সময়)


সুতরাং Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB)যখন আমরা পুনর্লিখনগুলি চালু করেছি তখন আরও ভাল কাজ করবে?
বাটল বাটকস

no.Mage :: getBaseUrl (): সর্বদা ম্যাজেন্টো পেজলিক্সের জন্য ব্যবহৃত হয়
অমিত বেরা

সাহায্য করার জন্যে ধন্যবাদ. তবে আপনি বলেছিলেন যে Mage::getBaseUrl()এটি আপনাকে একটি লিঙ্ক দেয় যা এতে রয়েছে index.php। আমার যদি প্রয়োজন না হয় তবে আমি কেন অতিরিক্ত সূচকটি চাই?
বাটাল বাটকস

যদি আমি প্রেরণ করি তবে ফাংশন getBaseUrl () তে কোনও প্যারামিটার না প্রেরণ করা হয় তবে যদি তা প্রেরণ করা হয় তবে $ টাইপ = ম্যাজ_কোড়_মোডেল_সেটোর :: URL_TYPE_LINK, $ সুরক্ষিত = নাল)
অমিত বেরা

আবেদনগুলি এই ম্যাজেন্টো Mage.php দেখুন
অমিত বেরা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.