php - 将 wordpress powered 站点中的所有标题转换为 "Capitalized"大小写

标签 php mysql wordpress capitalization

所以我需要的是关于如何将 wordpress 支持的网站上的所有标题转换为大写字母的查询或一些提示。

我现在拥有的是这样的:

AAAAA BBBBB CCCCC

我希望它是这样的:

Aaaaa Bbbbb Ccccc

我确实在此处尝试使用谷歌搜索和搜索,但未能完成该任务,因此非常感谢您的帮助!

更新:

我需要更新数据库中的标题。只是为了清楚。 :)

最佳答案

MySQL 中没有这方面的功能,但您可以像这样创建一个:

DROP FUNCTION IF EXISTS proper;
SET GLOBAL  log_bin_trust_function_creators=TRUE;
DELIMITER |
CREATE FUNCTION proper( str VARCHAR(128) )
RETURNS VARCHAR(128)
BEGIN
  DECLARE c CHAR(1);
  DECLARE s VARCHAR(128);
  DECLARE i INT DEFAULT 1;
  DECLARE BOOL INT DEFAULT 1;
  DECLARE punct CHAR(17) DEFAULT ' ()[]{},.-_!@;:?/';
  SET s = LCASE( str );
  WHILE i < LENGTH( str ) DO 
    BEGIN
      SET c = SUBSTRING( s, i, 1 );
      IF LOCATE( c, punct ) > 0 THEN
        SET BOOL = 1;
      ELSEIF BOOL=1 THEN 
        BEGIN
          IF c >= 'a' AND c <= 'z' THEN 
            BEGIN
              SET s = CONCAT(LEFT(s,i-1),UCASE(c),SUBSTRING(s,i+1));
              SET BOOL = 0;
            END;
          ELSEIF c >= '0' AND c <= '9' THEN
            SET BOOL = 0;
          END IF;
        END;
      END IF;
      SET i = i+1;
    END;
  END WHILE;
  RETURN s;
END;
|
DELIMITER ;

来自 here .

您可以通过运行轻松更新:

Update wp_posts
Set post_title = proper(post_title)

关于php - 将 wordpress powered 站点中的所有标题转换为 "Capitalized"大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3033988/

相关文章:

mysql - 表名或列名长度影响性能?

javascript - 当访问者访问特定页面时从缓存中删除我的网站

java - 以 UTF-8 格式发布 Java/Android 中的文本和文件

php - 如果行不存在则插入

javascript - JavaScript、Php、AJAX、MySql 网站上的“赞成”按钮无法正常工作。我究竟做错了什么?

mysql - hibernate :com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException

css - 当从另一台服务器提取数据时如何使网站移动响应

php - 获取所有类别和帖子模板上的 WordPress 当前类别 ID 和顶级父类别 ID

php - 如何获取 Celery 中失败的任务?

php - 如何在 PHP 中添加和更改 XML 标记