Comments (6)
Hey @afbora,
I removed the price check for product pages. This should solve your problem. You can try it with 1.6.0-beta.2.
from merx.
$page->price()
has to be a Field
. I assume your $page->price()
returns a float
?
The price method of your product model should look something like this.
// site/models/product.php
class ProductPage extends Page {
// …
public function price(): \Kirby\Cms\Field
{
$price = 999.99;
return new \Kirby\Cms\Field($this, 'price', $price);
}
// …
}
Incidentally, I'm working on an improvement to this right now. In a future update floats will be allowed for $page->price()
, but for now you have to return a field.
from merx.
No, I'm using Field
but I've no price
field in product.yml
. In my application: price = number of items in the package * unit price
. So I've to use custom price method.
public function price()
{
return new Field($this, 'number', (float)($this->unitPrice()->float() * $this->inPackage()->int()));
}
from merx.
You can try to change the second parameter of field from number
to price
.
public function price()
{
return new Field($this, 'price', (float)($this->unitPrice()->float() * $this->inPackage()->int()));
}
from merx.
No luck.. ->exists()
method checks the parent ->content()
method and results:
$page->price(); // 1490
$page->content(); // No exists price field in content
from merx.
Okay, this is a bug and needs further testing.
A quick solution could be to use two arguments with the $cart->add()
method to avoid the ->exists()
method.
$cart->add('nice-shoes', []);
from merx.
Related Issues (20)
- more examples HOT 4
- $cart->getSum() includes tax? HOT 1
- Documentation website down HOT 2
- Syntax error with Starter Kit HOT 1
- No such payment_intent HOT 1
- Order validation on multi-language sites breaks on Kirby 3.6.4+ HOT 6
- Compatibility issue with Kirby 3.7.1 HOT 4
- Is it possible to disable online payments? HOT 1
- Upgrade to Paypal API v2 HOT 5
- Wagnerwagner\Merx\ProductList::__set(): Return type must be void when declared HOT 2
- Discount per product? HOT 1
- How do you add different types of sizes for a product? HOT 2
- Deprecated Stripe API
- Save orders in a specific language HOT 1
- Order pages with identical page num created HOT 3
- Declaration of Wagnerwagner\Merx\ProductList::__set(string $key, $value) must be compatible with Kirby HOT 1
- Cart and Checkout problem HOT 1
- Cart()->remove() not removing product - Issue with UUID's HOT 2
- Dynamic shipping prices (request) HOT 1
- Allow donation or 'pay what you want' HOT 11
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from merx.