aucor/polylang-smart-language-select-disabler
Composer 安装命令:
composer require aucor/polylang-smart-language-select-disabler
包简介
README 文档
README
Contributors: Teemu Suoranta, Timi Wahalahti
Tags: Polylang, Admin, Language Select, WordPress
License: GPLv2 or later
Why this plugin exists?
Changing post's or term's language when it has translations messes things up
Basically the translations are unlinked and there is no warning for this. You may need to change post's language for example when you start to write a new post and notice that it's in wrong language. When translations are involved, there's really no use for changing the language.
Users confuse adding translations and changing post's language
I've seen that users have multiple times changed post's language when they meant to navigate to translation. Smartly disabling the select enhances the UI.
Changing the posts language is risky business anyway
Changing the language of post when it has content is prone to errors. Even though the language can be changed, the images added to content may still be in wrong language. Custom fields, relations etc are not automatically changed. Language should be changed right away before adding content.
Changing the site default language is risky business anyway
Changing the site default language is prone to errors. Even though the language can be changed, links in content may still be in wrong language. Custom fields, relations etc are not automatically changed. Language should be changed only if user knows what they are doing.
What it does?
- Checks if currently edited post or term has translations
- If it has, hides select and shows the name of current language with CSS and vanilla JS
- Removes option to change default language unless the user does not provide
iknowwhatimdoingGET-parameter or allows it via filter
Installation
Download and activate. That's it. You will need Polylang, too (d'oh).
Composer:
$ composer require aucor/polylang-smart-language-select-disabler
With composer.json:
{
"require": {
"aucor/polylang-smart-language-select-disabler": "*"
},
"extra": {
"installer-paths": {
"htdocs/wp-content/plugins/{$name}/": ["type:wordpress-plugin"]
}
}
}
Filters
You can disable select always or build some fancy custom logic:
function my_polylang_disable_language_select($disable_select, $current_screen) {
return true;
}
add_filter('polylang-disable-language-select', 'my_polylang_disable_language_select', 10, 2);
Allow default language change:
add_filter('polylang-disable-default-language-select', '__return_true');
Issues
- No disabling for media (to-do)
Releases
1.1.1 WordPress.org release
1.1.0 Disable default language change select
Changing site default language will probably cause some issues if you don't knows what you are doing. Disable the availability to do so, unless the user know what they are doing. Also, use WordPress coding standards to make contributing easier. Props to @timiwahalahti for changes in this release.
1.0.2 Remove create_function usage and include license
1.0.1 Add changes that dropped somewhere along the way
Added some missing stuff because some changes dropped in 1.0.0 (facepalm)
1.0.0 Disable functionality rewritten
The HTML attribute "disabled" caused many problems. The disabling was changed so that the select is hidden with CSS and in its place, plain paragraph with current language is displayed.
0.1.1 Fix bug when adding a new term translation
Disabling the language select messes up creating new term translation. The translation wasn't linked to the original term because of the disabled attribute. Tried to remove the disabled attribute on submit but couldn't get it work for some reason with WordPress admin form. Removed the disabling for now on that view.
0.1.0 Initial release
aucor/polylang-smart-language-select-disabler 适用场景与选型建议
aucor/polylang-smart-language-select-disabler 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 4.65k 次下载、GitHub Stars 达 13, 最近一次更新时间为 2016 年 11 月 05 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 aucor/polylang-smart-language-select-disabler 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 aucor/polylang-smart-language-select-disabler 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 4.65k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 13
- 点击次数: 22
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: GPL-2.0-or-later
- 更新时间: 2016-11-05
