Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Wordpress主题的单个页面中使用Reactjs和路由功能,而不影响其他页面url_Wordpress_.htaccess_Reactjs_Url - Fatal编程技术网

如何在Wordpress主题的单个页面中使用Reactjs和路由功能,而不影响其他页面url

如何在Wordpress主题的单个页面中使用Reactjs和路由功能,而不影响其他页面url,wordpress,.htaccess,reactjs,url,Wordpress,.htaccess,Reactjs,Url,我有一个名为MCQ Academy的教育网站,它是用Wordpress建立的。此网站包含一个页面,允许访问者进行测试。页面为https://mcqacademy.com/start-mcq-test/?lang=en&topic=english-语法。此页面当前显示20个问题 我已经聘请了一名开发人员使用Reactjs和路由功能将问题分页为4页。每页将显示5个问题,最后一页还将有一个提交按钮 现在,我的开发人员说url将更改为https://mcqacademy.com/start-mcq-te

我有一个名为MCQ Academy的教育网站,它是用Wordpress建立的。此网站包含一个页面,允许访问者进行测试。页面为
https://mcqacademy.com/start-mcq-test/?lang=en&topic=english-语法
。此页面当前显示20个问题

我已经聘请了一名开发人员使用Reactjs和路由功能将问题分页为4页。每页将显示5个问题,最后一页还将有一个提交按钮

现在,我的开发人员说url将更改为
https://mcqacademy.com/start-mcq-test/#/lang-en/topic/english grammar/page-1
使用reactjs路由。我希望URL匹配
https://mcqacademy.com/start-mcq-test/lang-en/english-grammar/page-1

问题是,我不希望在url中使用/#/,因为它不利于seo,并且在服务器上不呈现/#/之后的url部分。是否可以使用Reactjs路由在特定wordpress页面上工作,而不影响网站的其他页面url,并且在启用Reactjs的页面中导航时避免使用/#/in url


谢谢您的时间。

我认为您的开发人员应该使用
BrowserRouter
(),而不是
HashRouter
()。@我使用过BrowserRouter,但它对我不起作用,但这里有一个答案,可能会给您一些想法。如果您愿意,您可以利用客户端路由完全更改模板,而不是其中的一部分。在页面刷新时,它将在服务器上搜索路由,但该路由不可用,因此将显示错误要使用非散列URL并仍能完全正常工作,您可以为您的测试子目录设置一个全面路由服务器端,始终提供相同的模板&bundle.js,并让react router处理路由和呈现正确的页面。我认为您的开发人员应该使用
BrowserRouter
(),而不是
HashRouter
()。我使用过BrowserRouter,它对我来说不起作用,但这里有一个答案,可能会给您一些想法。如果您愿意,您可以利用客户端路由完全更改模板,而不是其中的一部分。在页面刷新时,它将在服务器上搜索路由,但该路由不可用,因此将显示错误要使用非散列URL并仍能完全正常工作,您可以为您的测试子目录设置一个全面路由服务器端,始终提供相同的模板&bundle.js,并让react router处理路由和呈现正确的页面。