Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

标签扩展如何传递变量参数? #1104

Open
mkinit opened this issue Feb 14, 2022 · 5 comments
Open

标签扩展如何传递变量参数? #1104

mkinit opened this issue Feb 14, 2022 · 5 comments

Comments

@mkinit
Copy link

mkinit commented Feb 14, 2022

{Js2:postlist cate="$post['category']['id']" /}

做了一个自定义标签,想把当前文章的分类id传过去,发现传过去是$post['category']['id']原样的字符串,不是分类ID。有没有大佬用过自定义标签,求解

@zcenet
Copy link

zcenet commented Mar 3, 2022 via email

@mkinit
Copy link
Author

mkinit commented Mar 4, 2022

可以参考我的做法 https://github.com/shirne/ShirneCMS/blob/master/src/application/common/taglib/Article.php https://github.com/shirne/ShirneCMS/blob/master/src/application/common/core/BaseTabLib.php 这两个文件

我看了一下你的标签扩展跟官方差不多的写法,是返回一段PHP代码,我之前试过是可以直接传递变量的。
不过我的标签扩展是跟控制器一样查询数据后拼接好完整的HTML结构返回,所有不能直接传递变量。

@shirne
Copy link

shirne commented Mar 4, 2022

我看了一下你的标签扩展跟官方差不多的写法,是返回一段PHP代码,我之前试过是可以直接传递变量的。 不过我的标签扩展是跟控制器一样查询数据后拼接好完整的HTML结构返回,所有不能直接传递变量。

你这个标签库是直接生成最终html ? html中没有php代码 ?

除非是模板阶段就需要固定结果的,一般是把参数解析成php代码(就是编译后的模板代码),然后在实际访问的时候执行代码输出结果 。

@mkinit
Copy link
Author

mkinit commented Mar 5, 2022

我看了一下你的标签扩展跟官方差不多的写法,是返回一段PHP代码,我之前试过是可以直接传递变量的。 不过我的标签扩展是跟控制器一样查询数据后拼接好完整的HTML结构返回,所有不能直接传递变量。

你这个标签库是直接生成最终html ? html中没有php代码 ?

除非是模板阶段就需要固定结果的,一般是把参数解析成php代码(就是编译后的模板代码),然后在实际访问的时候执行代码输出结果 。

是的,我的标签库输出的就是最终的html。我再研究研究,实在不行我就从url提取当前文章ID就行了。谢谢大佬。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants