小编Chi*_*ung的帖子

.htaccess用WordPress插件重写

我正在为自定义WordPress多站点网络构建一个WordPress插件,并且有一些文件使用URL变量从第二个数据库(而不是WordPress数据库)加载信息.

在WordPress外部构建的版本中,通过导航到http://website.com/NAME-HERE它将检查它是否是我的数据库中的用户名,如果不检查它是否在我的数据库中是一个组并加载与其用户名或组相对应的文件.

现在我完全迷失了将其实现到WordPress Multisite中.据我所知,插件无法.htaccess重写?如何使其在所有网站上运行?

如果不是最好的方法来完成这个?

我是否需要将我的pretty.php&.htaccess重写放入我的根目录并将页面指向插件中的文件?如果是这样,它如何与多个主题一起使用?

我唯一的另一个想法是,这可以用类似的东西来实现RewriteMap.

在这一点上,我认为我最好的选择是联系StackOverflow社区寻求帮助或指导.

的.htaccess

RewriteEngine On  
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]  
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]  

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

RewriteRule ^(\w.+)$ ./pretty.php?pretty=$1 [QSA]

ErrorDocument 404 /404.php
Run Code Online (Sandbox Code Playgroud)

pretty.php

// First check if passed pretty parameter is a username.
if(checkIfUserByUsername($_GET['pretty']))
{
    $_GET['username'] = $_GET['pretty'];

    include("USERNAME.php");

// If not a username, check to see if it's an event.
}else if(checkIfStreamByPretty($_GET['pretty'])){
    $_GET['id'] = getStreamIdFromPretty($_GET['pretty']);

    include("GROUP.php");
}else{
    // If …
Run Code Online (Sandbox Code Playgroud)

php wordpress .htaccess mod-rewrite multisite

17
推荐指数
1
解决办法
776
查看次数

科尔多瓦隐藏状态栏

我正在使用Phonegap和Framework7构建iPad应用程序,无论我做什么,我都无法将状态栏隐藏在iPad上.

我试过谷歌一些教程,包括以下问题:

我已经尝试了上述问题的所有答案中提供的解决方案,我的状态栏仍然存在.

我用xCode打开了项目,我可以看到设置配置正常:

对于部署信息中的i​​Phone设置:

  • 状态栏样式:默认
  • 隐藏状态栏(已选中)
  • 需要全屏(选中)

对于部署信息中的i​​Pad设置:

  • 应用程序启动时隐藏(已选中)
  • 需要全屏(选中)

Info > Custom iOS Target Properties,我已设置以下内容:

  • 查看基于控制器的状态栏外观:否

deviceready事件被触发时我也尝试使用JavaScript方式:

StatusBar.hide();
Run Code Online (Sandbox Code Playgroud)

更新

当我跑:

StatusBar.isVisible
Run Code Online (Sandbox Code Playgroud)

该属性返回false,但我仍然看到顶部的白色条.

statusbar ios cordova phonegap-build html-framework-7

8
推荐指数
1
解决办法
1607
查看次数

如何使用HttpException修复Laravel的路由错误?

我使用zizaco entruest rbac,这些是我的网络路由导致错误

Route::group(['prefix' => 'user-management', 'middleware' => ['permission:admin']], function() {

    Route::get('/users', function(){
        return "sds";
    });

});
Run Code Online (Sandbox Code Playgroud)

当我尝试导航到

http://localhost:8000/user-management/users
Run Code Online (Sandbox Code Playgroud)

我收到了一个错误

Symfony \ Component \ HttpKernel \ Exception \ HttpException
No message
Run Code Online (Sandbox Code Playgroud)

哪里可能是错的

我评论了所有其他路线,发现这是罪魁祸首

我按照解释设置了我的rbac

https://github.com/Zizaco/entrust
Run Code Online (Sandbox Code Playgroud)

php laravel

8
推荐指数
2
解决办法
7240
查看次数

如何制作标签说明

我对WordPress很陌生,但基本上我想要实现的是将标签的描述作为我自定义主题的必备字段,用于WordPress 4.5.2

我已经尝试了三种方法,但所有这些方法都失败了,所以如果有任何WordPress专家可以指导我会很好.

方法#1

的functions.php

当调用edit_tag_form_fieldsadd_tag_form钩子时,我试图"编辑"钩子,然后通过Javascript修改

function require_category_description(){
    require_once('includes/require_category_description.php');
}
add_action('edit_tag_form_fields', 'require_category_description');
add_action('add_tag_form', 'require_category_description');
Run Code Online (Sandbox Code Playgroud)

require_category_description.php

<script>
    jQuery(document).ready(function(){
        var description = jQuery('#tag-description');
        if(!description) description = jQuery('#description');

        if(description){
            description.parents('form').submit(function(){
                if(description.val().trim().length < 1){
                    console.log('Please enter a description...');
                    return false;
                }
            });
        }
    });
</script>
Run Code Online (Sandbox Code Playgroud)

即使说明字段为空,表单也在提交,最重要的是,事件监听器内的console.log从未发生过.我试图记录描述变量,以确保它进入if情况.因此,我认为表单永远不会提交,整个"提交"是通过Ajax完成的,点击按钮.

方法#2

functions.php保持相同的办法#1,但我已经做了一些改动的Javascript明智的目标按钮点击事件,而不是形式提交事件.

require_category_description.php

<script>
    jQuery(document).ready(function(){
        var description = jQuery('#tag-description');
        if(!description) description = jQuery('#description');

        if(description){
            var button = description.parents('form').find('#submit');

            button.on('click', function(e){
                if(description.val().trim().length < 1)
                    console.log('Please enter a description...');

                e.preventDefault();
                return false;
            });
        } …
Run Code Online (Sandbox Code Playgroud)

javascript php forms wordpress jquery

7
推荐指数
1
解决办法
305
查看次数

PHP在XML开始标记上抛出错误

我有一个文件包含一个名为sitemap.html和在站点地图中的文件,我有以下代码:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
    <url>
        <loc><?php echo SITE_URL . '/'; ?></loc>
        <changefreq>monthly</changefreq>
        <priority>1.00</priority>
    </url>

    <?php foreach ($this->data->content as $content): ?>
        <url>
            <loc><?php echo SITE_URL . $content->permalink; ?></loc>
            <lastmod><?php echo date("Y-m-d", $content->publish_date); ?></lastmod>
            <changefreq>monthly</changefreq>
            <priority><?php echo $content->sitemap_index; ?></priority>
        </url>
    <?php endforeach; ?>
</urlset>
Run Code Online (Sandbox Code Playgroud)

一切似乎都没问题,但我收到的错误500就是说:

PHP解析错误:语法错误,第1行的sitemap.html中的意外"版本"(T_STRING)

正如你所看到的,我正在使用<?xml而不是<?php为什么它试图将其解析为PHP?

起初,我认为这是导致问题的神奇引号,但是当我执行get_magic_quotes_gpc()的var_dump时,我得到bool(false)了神奇的引号甚至都没有.

此外,在我的php.ini,我看到magic_quotesOFF.

作为修复它的替代方法,我用以下内容替换了我的第一行:

<?php echo '<?xml version="1.0" encoding="UTF-8"?>'; ?>
Run Code Online (Sandbox Code Playgroud)

但我仍然对正在发生的事感到好奇.

我有其他网站托管在同一台服务器上(PHP版本5.4.45),我没有在其他网站的站点地图上得到PHP Parse Error ... …

php php-parse-error

6
推荐指数
1
解决办法
1076
查看次数

Cleave.js 电话 CA

我正在尝试使用Cleave.js格式化电话号码字段,但它不起作用,但我似乎无法弄清楚原因。

我是这样开始的:

import Cleave from 'cleave.js';

var cleave = new Cleave('.phone', {
    'phone': true,
    'phoneRegionCode': 'CA'
});
Run Code Online (Sandbox Code Playgroud)

我收到了这个错误:

> Uncaught Error: [cleave.js] Please include phone-type-formatter.{country}.js lib
Run Code Online (Sandbox Code Playgroud)

所以我通过添加以下内容导入了我缺少的库:

import CleavePhone from 'cleave.js/dist/addons/cleave-phone.ca';
Run Code Online (Sandbox Code Playgroud)

所以现在我的代码是:

import Cleave from 'cleave.js';
import CleavePhone from 'cleave.js/dist/addons/cleave-phone.ca';

var cleave = new Cleave('.phone', {
    'phone': true,
    'phoneRegionCode': 'CA'
});
Run Code Online (Sandbox Code Playgroud)

我不再收到任何控制台错误,但电话号码的格式似乎根本不起作用。

我试图将 Cleave 的选项更改为日期:

var cleave = new Cleave('.phone', {
    'date': true,
    'datePattern': ['Y', 'm', 'd']
});
Run Code Online (Sandbox Code Playgroud)

并且输入似乎格式正确。因此,我知道我的元素查询选择器没问题。

但我似乎无法弄清楚为什么我的电话号码格式不正确。

javascript plugins cleave

5
推荐指数
1
解决办法
2312
查看次数

使用名称中的冒号和斜杠从PHP对象获取数据

我是对象的新手并且有一些基本的了解,但在从特定类型的节点获取数据方面苦苦挣扎.

这个:

$test->broadcast_data
Run Code Online (Sandbox Code Playgroud)

返回:

object(threewp_broadcast\BroadcastData)#1599 (5) {
  ["id"]=>
  int(49663)
  ["blog_id"]=>
  int(1)
  ["post_id"]=>
  int(38863)
  ["dataModified":"threewp_broadcast\broadcast_data":private]=>
  bool(true)
  ["data":"threewp_broadcast\broadcast_data":private]=>
  array(2) {
    ["version"]=>
    int(2)
    ["linked_children"]=>
    array(3) {
      [2]=>
      int(18557)
      [3]=>
      int(8097)
      [4]=>
      int(1768)
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过以下方式获取ID:

$test->broadcast_data->id
Run Code Online (Sandbox Code Playgroud)

但是我如何获得linked_children数组并将其分配给变量.冒号和斜线"data":"threewp_broadcast\broadcast_data":private让我失望.

谢谢

php

5
推荐指数
1
解决办法
95
查看次数

Laravel 5.6 Eager Loading特定列不返回任何内容

我有两节课,ProductProductFormat.正确定义了这种关系,我的产品是hasManyProductFormat.

public function formats()
{
    return $this->hasMany(ProductFormat::class);
}
Run Code Online (Sandbox Code Playgroud)

当我试图加载与特定列的关系时,如文档(https://laravel.com/docs/5.6/eloquent-relationships#eager-loading)中所示,它没有按预期工作.

例如,当我执行以下操作时:

Product::with('formats:id,upc')->get();
Run Code Online (Sandbox Code Playgroud)

我得到了我的产品,到处都是空格式.

{
    id: 1,
    formats: [ ]
}
Run Code Online (Sandbox Code Playgroud)

但是,如果我执行以下操作:

Product::with('formats')->get();
Run Code Online (Sandbox Code Playgroud)

我得到了预期的格式,但它有太多不需要的列.

{
    id: 1,
    formats: [
        {
            id: 1,
            upc: "101862422191",
            weight: 8.46,
            weight_unit: "kg"
        }
   ]
}
Run Code Online (Sandbox Code Playgroud)

php laravel laravel-5

5
推荐指数
1
解决办法
2471
查看次数

合并请求无效

我试图替换'pic'值,当它进来时设置为数组,带有图像文件名,但合并似乎不起作用.

我没有在日志中使用以下代码获得任何错误.我想我不允许嵌入图片,所以下面有链接.我正在做一个Laravel项目.

Log::info($request);

$image = $request->file('pic');
$imageName = $image->getClientOriginalName();

$request->merge(array('pic' => $imageName));
$request->file('pic')->move(base_path()."/public/profile_pics",$imageName);

Log::info($request);
Run Code Online (Sandbox Code Playgroud)

Laravel Log

有任何想法吗?

php http request laravel

3
推荐指数
1
解决办法
1036
查看次数

Woocommerce aJax 将优惠券代码应用于购物篮

我试图通过按下按钮将优惠券代码应用于购物篮。我有以下代码:-

coupon = jQuery(this).data('coupon');
data = {coupon_code : coupon};
jQuery.post( "?wc-ajax=apply-coupon", { coupon_code: coupon }).done(function( data ) {
    alert( "Data Loaded: " + data );
});
Run Code Online (Sandbox Code Playgroud)

我可以看到以下数据正在解析到服务器:-

coupon_code: 10percentdiscount
Run Code Online (Sandbox Code Playgroud)

10percentdiscount存在。

一旦我发送了请求,服务器就不会发回响应。

我是正确提出这个要求还是有其他方法?

先感谢您。

php ajax wordpress woocommerce

2
推荐指数
1
解决办法
1万
查看次数