本文整理匯總了PHP中Concrete\Core\Multilingual\Page\Section\Section::getByLocaleOrLanguage方法的典型用法代碼示例。如果您正苦於以下問題:PHP Section::getByLocaleOrLanguage方法的具體用法?PHP Section::getByLocaleOrLanguage怎麽用?PHP Section::getByLocaleOrLanguage使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Concrete\Core\Multilingual\Page\Section\Section
的用法示例。
在下文中一共展示了Section::getByLocaleOrLanguage方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: getPreferredSection
/**
* Returns the preferred section based on session, cookie,
* user object, default browser (if allowed), and finally
* site preferences.
* Since the user's language is not a locale but a language,
* attempts to determine best section for the given language.
*
* @return Section
*/
public static function getPreferredSection()
{
$site = \Site::getSite();
$locale = false;
$app = Facade::getFacadeApplication();
// they have a language in a certain session going already
$session = $app->make('session');
if ($session->has('multilingual_default_locale')) {
$locale = $session->get('multilingual_default_locale');
} else {
$cookie = $app->make('cookie');
if ($cookie->has('multilingual_default_locale')) {
$locale = $cookie->get('multilingual_default_locale');
}
}
if ($locale) {
$home = Section::getByLocale($locale);
if ($home) {
return $home;
}
}
$u = new \User();
if ($u->isRegistered()) {
$userDefaultLanguage = $u->getUserDefaultLanguage();
if ($userDefaultLanguage) {
$home = Section::getByLocaleOrLanguage($userDefaultLanguage);
if ($home) {
return $home;
}
}
}
$config = $site->getConfigRepository();
if ($config->get('multilingual.use_browser_detected_locale')) {
$home = false;
$locales = \Punic\Misc::getBrowserLocales();
foreach (array_keys($locales) as $locale) {
$home = Section::getByLocaleOrLanguage($locale);
if ($home) {
break;
}
}
if ($home) {
return $home;
}
}
$site = \Site::getSite();
return Section::getByLocale($site->getDefaultLocale());
}
示例2: getPreferredSection
/**
*
* Returns the preferred section based on session, cookie,
* user object, default browser (if allowed), and finally
* site preferences.
* Since the user's language is not a locale but a language,
* attempts to determine best section for the given language.
* @return Section
*/
public static function getPreferredSection()
{
$locale = false;
// they have a language in a certain session going already
if (Session::has('multilingual_default_locale')) {
$locale = Session::get('multilingual_default_locale');
} else {
if (Cookie::has('multilingual_default_locale')) {
$locale = Cookie::get('multilingual_default_locale');
}
}
if ($locale) {
$home = Section::getByLocale($locale);
if ($home) {
return $home;
}
}
$u = new \User();
if ($u->isRegistered()) {
$userDefaultLanguage = $u->getUserDefaultLanguage();
if ($userDefaultLanguage) {
$home = Section::getByLocaleOrLanguage($userDefaultLanguage);
if ($home) {
return $home;
}
}
}
if (Config::get('concrete.multilingual.use_browser_detected_locale')) {
$home = false;
$locales = \Punic\Misc::getBrowserLocales();
foreach (array_keys($locales) as $locale) {
$home = Section::getByLocaleOrLanguage($locale);
if ($home) {
break;
}
}
if ($home) {
return $home;
}
}
return Section::getByLocale(Config::get('concrete.multilingual.default_locale'));
}