Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.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
Javascript 如何使用php或js复制页面内容进行元描述,并将其限制为150个字符?_Javascript_Php_Html_Metadata - Fatal编程技术网

Javascript 如何使用php或js复制页面内容进行元描述,并将其限制为150个字符?

Javascript 如何使用php或js复制页面内容进行元描述,并将其限制为150个字符?,javascript,php,html,metadata,Javascript,Php,Html,Metadata,以前,我的网站只有几页,每一页都有几个标签页,上面有文章。正因为如此,我的元描述对于每个页面来说都是简单而宽泛的,涵盖了所有内容 然而,我最近将文章分开放在不同的页面上,以帮助我的SEO。因此,我现在有174页基本相同的描述。显然,这对SEO和CTR是不利的 每篇文章都位于一个单独的文本文档上,该文档存储在根目录的模板文件夹中的多个目录中 我尝试了几个文件函数来读取和回显文件的内容,但只有当调用的文本文件与脚本位于同一目录中时,我才让它工作 所以我想从当前页面中删除这篇文章,并使用它,而不是使用

以前,我的网站只有几页,每一页都有几个标签页,上面有文章。正因为如此,我的元描述对于每个页面来说都是简单而宽泛的,涵盖了所有内容

然而,我最近将文章分开放在不同的页面上,以帮助我的SEO。因此,我现在有174页基本相同的描述。显然,这对SEO和CTR是不利的

每篇文章都位于一个单独的文本文档上,该文档存储在根目录的模板文件夹中的多个目录中

我尝试了几个文件函数来读取和回显文件的内容,但只有当调用的文本文件与脚本位于同一目录中时,我才让它工作

所以我想从当前页面中删除这篇文章,并使用它,而不是使用外部文件。我使用当前页面尝试了相同的文件功能,但没有效果,我只得到了要显示的标题内容,没有正文内容

我的问题实际上是两个问题:

1。)如何在不同的目录中回显文件的内容,并将其限制为150个字符,最好使用php?

2。)如果上述操作不起作用或不可能,我如何使用php或js中代码所在的脚本内容来执行相同的操作?我可以将包含文章的div更改为具有id。

我正在寻找一个代码是完全相同的,无论它的网页上,所以我可以批量搜索/替换,而不是编辑174页

注意:我还尝试在实验中使用superglobals,以使代码与我想要的一样。另外,我不知道js,所以请提供解释或完整的代码片段,以获得js的任何答案

文件结构:

root
!
!-tpl
! !
! !-articles
!   !
!   !-topic1
!     !
!     !-article1.txt
!-topic
! !
! !-topic1
!   !
!   !-page1.php
Article 1.txt=带有p标签的几段内容
Page1.php期望的效果=

<!DOCTYPE html>
<head>
<meta id="desc" name="Description" content="Copy of first 150 chars of article1.txt">
</head>
<body>
<div class="container-fluid article" id="article">
<?include "article1.txt"?>
</div>
</body>
</html>

我为您编写了一个程序,假设您为我提供了当前变量。将其存储在根级别并运行它

for file in `find . -type f -name article*.txt`
do
  filename=`echo $file | cut -d"/" -f 5`
  filename_no_ext=${filename%".txt"}
  number_of_file=${filename_no_ext#"article"}
  output_file_name=./topic/topic$number_of_file/page$number_of_file.php
  awk '{
    printf "\<\!DOCTYPE html\>\n\<head\>\n"
    printf "\<meta id=\"desc\" name=\"Description\" content=\"" substr($0,0,50)
    printf "\"\>\n\</head\>\n\<body\>\n"
    printf "\<div class=\"container-fluid article\" id=\"article\"\>\n"
    printf "\<\?include \"" FILENAME "\"\?\>\n"
    printf "\<\/div\>\n\</body\>\n\</html\>"
  }' $file > $output_file_name
done
查找中的文件的
-类型f-名称文章*.txt`
做
filename=`echo$file | cut-d”/“-f 5`
filename\u no\u ext=${filename%“.txt”}
文件的数量=${filename\u no\u ext#“article”}
output_file_name=。/topic/topic$number_of_file/page$number_of_file.php
awk'{
printf“\\n\\n”
printf“\\n\\n\\n”
printf“\\n”
printf“\\n”
printf“\\n\\n”
}“$file>$output\u file\u name”
完成

希望它有帮助,希望您可以根据您的需要做一些小的修改

我为您编写了一个程序,假设您提供了当前变量。将其存储在根级别并运行它

for file in `find . -type f -name article*.txt`
do
  filename=`echo $file | cut -d"/" -f 5`
  filename_no_ext=${filename%".txt"}
  number_of_file=${filename_no_ext#"article"}
  output_file_name=./topic/topic$number_of_file/page$number_of_file.php
  awk '{
    printf "\<\!DOCTYPE html\>\n\<head\>\n"
    printf "\<meta id=\"desc\" name=\"Description\" content=\"" substr($0,0,50)
    printf "\"\>\n\</head\>\n\<body\>\n"
    printf "\<div class=\"container-fluid article\" id=\"article\"\>\n"
    printf "\<\?include \"" FILENAME "\"\?\>\n"
    printf "\<\/div\>\n\</body\>\n\</html\>"
  }' $file > $output_file_name
done
查找中的文件的
-类型f-名称文章*.txt`
做
filename=`echo$file | cut-d”/“-f 5`
filename\u no\u ext=${filename%“.txt”}
文件的数量=${filename\u no\u ext#“article”}
output_file_name=。/topic/topic$number_of_file/page$number_of_file.php
awk'{
printf“\\n\\n”
printf“\\n\\n\\n”
printf“\\n”
printf“\\n”
printf“\\n\\n”
}“$file>$output\u file\u name”
完成

希望它有帮助,希望您可以根据您的需要做一些小的修改

我尝试了几个文件函数来读取和回显文件的内容,但我只在调用的文本文件与脚本位于同一目录时才让它工作。
也许您可以在这里分享您所做的,我们会帮助您?如果您想使用PHP透视图,那么理想情况下,您可以使用每个文件中包含的头,我使用w3schools.com作为参考,并且我一直尝试使用的文件函数之一是
file\u get\u contents
,因为它说的是
file\u get\u contents(path,include_path,context,start,max_length)
因此我有两个需要的详细信息,即读取和回显内容,并限制长度。我发现它也可以与URL一起使用,这很完美,因为我可以使用superglobals。但是,当我指定从56588开始时(在文章开始之前的字符数),它不起作用。如果我做5000左右,我只得到56588的内容,我得到以下错误:
file\u get\u contents():stream不支持搜索
我的代码是这样的:
我想一个简单的方法是使用bash来编辑文件。你使用的是基于Linux的操作系统吗?嗯,是的?如果Linux和Unix可以互换,那么是的。它不是windows或任何东西。我在主机上使用cPanel。我的pc上有一个批量搜索/替换程序,我可以下载必要的文件,然后上传编辑。我只需要获得正确的代码,最好是一个通用代码
我已经尝试了几个文件函数来读取和回显文件的内容,但我只在调用的文本文件与脚本位于同一目录下时才让它工作。
也许你可以分享你在这里做的事情,我们会的帮助您?如果您想使用PHP透视图,那么理想情况下,您可以使用每个文件中包含的标题。我正在使用w3schools.com作为参考,并且我一直尝试使用的文件函数之一是
file\u get\u contents
,因为它显示
file\u get\u contents(path,include_path,context,start,max_length)
因此我有两个需要的详细信息,即读取和回显内容,并限制长度。我发现它也可以与URL一起使用,这很完美,因为我可以使用superglobals。但是,当我指定从56588开始时(在文章开始之前的字符数),它不起作用。如果我做5000左右,我只得到56588的内容,我得到以下错误:
file\u get\u contents():stream不支持搜索
我的代码是这样的:
我想一个简单的方法是使用bash来编辑文件。你使用的是基于Linux的操作系统吗?嗯,是的?如果Linux和Unix可以互换,那么是的。它不是windows或任何东西。我在主机上使用cPanel。我有一个批量搜索/替换程序